Код по информатике на что-то
Не читайте и не смотрите этот код
uses GraphABC;
function DegToRad(angle: real): real;
begin
Result := angle * Pi / 180;
end;
procedure DrawSwastika(x, y, size, angle: integer);
var
cx, cy: integer;
rad: real;
x1, y1, x2, y2, x3, y3, x4, y4, x5, y5, x6, y6, x7, y7, x8, y8: integer;
function RotatePoint(px, py: integer): (integer, integer);
var
dx, dy: integer;
newX, newY: integer;
begin
dx := px - cx;
dy := py - cy;
newX := Round(cx + dx * Cos(rad) - dy * Sin(rad));
newY := Round(cy + dx * Sin(rad) + dy * Cos(rad));
Result := (newX, newY);
end;
begin
Pen.Color := clBlack;
Pen.Width := 2;
cx := x + size div 2;
cy := y + size div 2;
rad := DegToRad(angle);
// Основные линии символа
(x1, y1) := RotatePoint(cx - size div 4, cy - size div 4);
(x2, y2) := RotatePoint(cx + size div 4, cy - size div 4);
(x3, y3) := RotatePoint(cx + size div 4, cy + size div 4);
(x4, y4) := RotatePoint(cx - size div 4, cy + size div 4);
// Горизонтальные и вертикальные линии
(x5, y5) := RotatePoint(cx - size div 2, cy);
(x6, y6) := RotatePoint(cx + size div 2, cy);
(x7, y7) := RotatePoint(cx, cy - size div 2);
(x8, y8) := RotatePoint(cx, cy + size div 2);
// Рисование символа
Line(x1, y1, x2, y2);
Line(x2, y2, x3, y3);
Line(x3, y3, x4, y4);
Line(x4, y4, x1, y1);
Line(x5, y5, x6, y6);
Line(x7, y7, x8, y8);
end;
begin
SetWindowSize(400, 400);
SetWindowCaption('Вращение');
var angle := 0;
while True do
begin
ClearWindow;
DrawSwastika(100, 100, 200, angle);
angle := (angle + 1) mod 360;
Sleep(10);
end;
end.
фашисткую свастику - (символ бесконечности) рисует