b26560c409
setlinestyle/getlinesettings: SOLID/DOTTED/CENTER/DASHED/USERBIT + NORM/THICK. _bgi_styled_line — Брезенхэм с 16-битной маской (пропуск пикселя по биту) и дублированием ±1 перпендикулярно оси для THICK; SOLID+NORM идёт быстрым путём (accel _bgi_lineseg). line/lineto/linerel/ rectangle/drawpoly переведены на него. Проверено в MAME (tests/bgitest). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
12 lines
292 B
C
12 lines
292 B
C
/* linerel — линия от CP до CP+(dx,dy); CP сдвигается в конец. */
|
|
#include "_bgi.h"
|
|
|
|
void linerel(int dx, int dy)
|
|
{
|
|
int nx = _bgi_cx + dx;
|
|
int ny = _bgi_cy + dy;
|
|
_bgi_styled_line(_bgi_cx, _bgi_cy, nx, ny, _bgi_fg);
|
|
_bgi_cx = nx;
|
|
_bgi_cy = ny;
|
|
}
|