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>
10 lines
379 B
C
10 lines
379 B
C
/* setlinestyle — задать стиль, пользовательскую маску и толщину линий. */
|
|
#include "_bgi.h"
|
|
|
|
void setlinestyle(int linestyle, unsigned upattern, int thickness)
|
|
{
|
|
_bgi_line_style = (uint8_t)linestyle;
|
|
_bgi_line_pattern = (uint16_t)upattern;
|
|
_bgi_line_thick = (thickness >= THICK_WIDTH) ? THICK_WIDTH : NORM_WIDTH;
|
|
}
|