Polygon i gwaizda

0

Jak narysowac sobie w jakims paintboxie przy uzyciu canvas.polygon gwiazde pięcioramienną? Nie wiem jak trzeba podobierać punkty prosze o jakis przyklad

0

Równanie okręgu i rysujesz co <ort>144stponie </ort>i tyle. a najłatwiej(z punku matematycznego ;p ) to byłoby sobie <ort>zrobiś </ort>fikcyjny układ <ort>wsprórzędny </ort>polarny (czyli opisujesz za pomoca promienia i kąta );

jak mi sie będzie chciało to napisze ci jak to zrobić :]

const R:integer=100;
      Dx:integer=200;
      Dy:integer=200;
var
  Form1: TForm1;
  i:integer;
  kat,sinus,cosinus:single;
  P:array [0..4] of TPoint;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 for i:=0 to 4 do
 begin
   kat:=144*i;
   sinus:=sin(kat*(pi/180));
   cosinus:=cos(kat*(pi/180));
   P[i].X:=Round(R*sqrt(1-sinus))+dx;
   P[i].Y:=Round(R*sqrt(1-cosinus))+dy;
 end;
 Canvas.Polygon(P);
end;

na razie tyle, ale jeszcze nie działa tak jak powinno, ale teraz nie mam czasu tego dopracować bo sie musze uczyć histy :/

1 użytkowników online, w tym zalogowanych: 0, gości: 1