Ответ: Отрисовка толстых линий
Можно ещё сильнее!(наверное)! xa,ya,xb и тд не надо делать реалом(Ставим Инт)!
после нахождения син и кос:
a:=abs(trunc(x1-x2));//катит у
b:=abs(trunc(y1-y2));//катит х
c:=(sqrt(a*a+b*b));//гипотенуза
cos:=(b/c);//cosB
sin:=(a/c);//sinB угол против стороны У
if (x2-x1<0)xor(y1-y2<0) then cos:=-cos;
cosadd:=trunc(cos*h);
sinadd:=trunc(sin*h);
xa:=x1+cosadd;//
ya:=y1+sinadd;// Переносим точки, так
xb:=x2+cosadd;// чтобы линия была параллельна...
...
...
FillTriangle(xa,ya,xb,yb,xc,yc);
FillTriangle(xc,yc,xd,yd,xb,yb);
end;
Но там баги с округлением(((
|