Dreiecke zeichnen
Dreiecke zeichnen
Hallo, ich möchte auf einem Canvas ausgefüllte Dreiecke zeichnen. Wie geht das?
-
- Beiträge: 292
- Registriert: Sa 5. Feb 2011, 20:38
- OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
- CPU-Target: 32Bit
- Wohnort: Wien
Re: Dreiecke zeichnen
Vielleicht Canvas.Polygon() mit entsprechend gesetztem Canvas.Brush?
Re: Dreiecke zeichnen
Ok, aber was muss Canvas.Polygon(>>hier<<) stehen und in welcher Reihenfolge?Eclipticon hat geschrieben:Vielleicht Canvas.Polygon() mit entsprechend gesetztem Canvas.Brush?
Also, wie übergebe ich die drei nötigen X- und Y-Werte?
Re: Dreiecke zeichnen
Also ich mach das immer so, hat sich eigentlich bewährt:
Kannst die Definition der Punkte auch hintereinander in einer Reihe schreiben. Das ganze lässt sich auch beliebig erweitern, auf beliebige n-Ecke
Code: Alles auswählen
var
A, B, C: TPoint;
begin
WITH Panel1.Canvas do
begin
Pen.Color:=Farbe;
Brush.Color:=Farbe;
A.x:=Punkt1.X;
A.y:=Punkt1.Y;
B.x:=Punkt2.X;
B.y:=Punkt2.Y;
C.x:=Punkt3.X;
C.y:=Punkt3.Y;
Polygon([A,B,C]);
end;
end;
Zuletzt geändert von Lori am Mo 24. Okt 2011, 16:49, insgesamt 1-mal geändert.
Grund: richtigen Highlighter
Grund: richtigen Highlighter
Re: Dreiecke zeichnen
Danke, scheint zu funktionieren.Jim92 hat geschrieben:Also ich mach das immer so, hat sich eigentlich bewährt:
Kannst die Definition der Punkte auch hintereinander in einer Reihe schreiben. Das ganze lässt sich auch beliebig erweitern, auf beliebige n-EckeCode: Alles auswählen
var A, B, C: TPoint; begin WITH Panel1.Canvas do begin Pen.Color:=Farbe; Brush.Color:=Farbe; A.x:=Punkt1.X; A.y:=Punkt1.Y; B.x:=Punkt2.X; B.y:=Punkt2.Y; C.x:=Punkt3.X; C.y:=Punkt3.Y; Polygon([A,B,C]); end; end;