Grafik in Lazarus realisieren?

3 Antworten

Wieso lässt sie Dich rätseln? Verstehst Du nicht, wie sie zu erzeugen ist?

Du beginnst mit der Senkrechten, oben sei der Starpunkt, unten der Endpunkt. Nun wanderst Du, mit fixer Schrittlänge mit dem Startpunkt entlang der y-Koordinate nach unten, während Du zeitglrich mit dem Endpunkt entlang der x-Koordinate (mit ähnlichem Stepping) nach rechts läufst.

Du kannst das bild als TImage einfach einbauen, oder du nutzt die Canvas eines TImages und zeichnest Linien von Koordinaten, die immer um so 5px kleiner und größer werden. Dabei dürfte diese Zeichnung bei rauskommen. Du kannst dafür eine Zählerscheife nutzen:

var

i:integer;

begin

for i:=1 to "n" do

begin

TImage.canvas.......

end;

end;

Die Linien, die auf der X- und Y-Achse beginnen, scheinen immer den gleichen Abstand zueinander zu haben (Startpunkte auf den Achsen).

Aber die Endpunkte der Linien, die zu einem Kreisbogen zusammenlaufen, werden wahrscheinlich mit Sinus und Cosinus berechnet worden zu sein.

Ist sicher interessant ausprobieren welche Formen dabei rauskommen, wenn man für die Endpunkte mal etwas mit Sinus und Cosinus experimentiert.

Linien kann man in Delphi/Lazarus mit dem Canvas-Objekt zeichnen, z.B. TImage.Picture.Canvas.LineTo(x,y)

Canvas.MoveTo(0, 0);
Canvas.LineTo(X, Y);

https://de.wikipedia.org/wiki/Sinus_und_Kosinus