![]() |
Re: Eine Eigene Linen Zeichnen ?
Zitat:
/EDIT: roter Kasten? SirThomberry trifft es genau. |
Re: Eine Eigene Linen Zeichnen ?
ich habe mir dein Beispiel noch einmal angesehen und mir ist ein Licht aufgegangen...
Aber leider nützt er mir wenig da ich unter Lazarus keine LineDDA Procedure habe. Ich könnte allerdings den Code entsprechend umbauen... Wenn ich wollte. Naja, dann nochmal VIELEN DANK. ich glaube jetzt weiß ich wie LineDDA Arbeitet, hatte es beim ersten hinsehen nicht ganz verstanden aber jetzt schon. Unter Delphi währe das eine Erleichterung gewesen. |
Re: Eine Eigene Linen Zeichnen ?
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Aber nun habe ich in der Zwischenzeit mal ein Beispiel von dem Marching Ants Beispiel abgeleitet mit einer bunten Linie. Vielleicht hilft es dir ja, um die Farbwerte zu bilden. |
Re: Eine Eigene Linen Zeichnen ?
nicht schlecht... das habe ich so hinbekommen:
Delphi-Quellcode:
Auf diese art und weise kann ich ebenfalls ein Viereck zeichnen....
procedure DrawRect(const aCanvas:TCanvas; const x1,y1,x2,y2:Integer; const AColor: TColor; const LinenStyle:array of Boolean; const FarbSyle:array of TColor);
begin // Oben DrawLine(aCanvas,x1,y1,x2,y1,AColor,LinenStyle,FarbSyle); // Unten DrawLine(aCanvas,x1,y2,x2,y2,AColor,LinenStyle,FarbSyle); // Links DrawLine(aCanvas,x1,y1,x1,y2,AColor,LinenStyle,FarbSyle); // Rechts DrawLine(aCanvas,x2,y1,x2,y2,AColor,LinenStyle,FarbSyle); end; Was mit Bunten Linen und Stylen klar kommt. Das einzigte Problem was ich noch haben sind Füllmuster. |
Re: Eine Eigene Linen Zeichnen ?
Schau Dir einfach den Bresenham-Algorithmus an, das ist eigentlich der Algorithmus, der in so ziemlich heder Graphics-Engine implementiert ist. Er benötigt keine Floatingpoint-Mathematik und ist imho der schnellste Algorithmus.
![]() ![]() |
Re: Eine Eigene Linen Zeichnen ?
Floatingpoint-Mathematik
die kenne ich gar nicht.... Danke ! Den Wiki Aktikel kannte ich schon, der hat mir nicht weiter geholfen, wegen den Formeln die ich verstehe, weil ich nicht weiß wie ich sie lesen muss Der Andere link könnte Hilfreich sein. Vielen Dank dafür..... Weil ich möchte wie schon gesagt noch weitere Figuren selbst zeichnen wie z.b. ein Kreis.Ich habe gelesen das kann der Bresenham-Algorithmus ebenfalls. edit00:
Delphi-Quellcode:
Diesen Teil verstehe icn noch nicht ganz: was passiert genau bei 2*(e+dy) ?
if dy >= 0 then // positive Steigung
if dx >= dy then // leichte positive Steigung for x := P1.X to P2.X do begin Plot(x,y); if 2*(e + dy) < dx then Inc(e,dy) else begin Inc(y); Inc(e, dy-dx); end; end else ich weiß das es sich hierbei um eine Berechnung handelt. aber zu welchem Zweck ? |
Re: Eine Eigene Linen Zeichnen ?
Zitat:
Zitat:
Zitat:
|
Re: Eine Eigene Linen Zeichnen ?
naja, dann muss ich die Funktion mal bei Gelegenheit auseinander nehmen, Zeile für Zeile.
Aber die Beispiel Soruce Sagen mir im Moment recht wenig. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz