Hallo,
Ich habe eine Aufgabenstellung bekommen:
Gegeben sind drei Eckpunkte eines Gleichseitigen Dreiecks (A,B,C)
Es wird for der Schleife ein zufälliger Punkt gewählt (punkt).
Jetzt wird von punkt zu einen der Eckpunkte (wird per Zufall ausgewählt) eine halbe strecke gezeichnet.
Dann wird der endpunkt diser strecke punkt und das selbe geht wieder von vorne los.
Ich glaube so wie ich es geschrieben habe müsste es gehen nur es kommt ein fehler bei punkt2:=a-punkt;
ich will das er punkt2 der vektor von punkt-a ist.
Delphi-Quellcode:
procedure TForm1.SierpinskiClick(Sender: TObject);
var
i: integer;
zufall: byte;
punkt,punkt2,a,b,c: Tpoint;
begin
A:=point(150,54);
B:=point(60,210);
C:=point(240,210);
paint.canvas.Polygon([A,B,C]);
randomize;
punkt:=point(random(300) + 1,random(300) + 1);
for i:=1 to 100 do
begin
zufall:=random(3)+1;
if zufall=1 then punkt2:=a-punkt;
if zufall=2 then punkt2:=b-punkt;
if zufall=3 then punkt2:=c-punkt;
paint.canvas.Polygon([punkt,punkt2]);
punkt:=punkt2;
end;
end;