Forum: Multimedia
by jfheins,
25. Okt 2009
Nja, nicht ganz aber fast :P
Bei MoveTo() musst du eine X und eine Y Koordinate eingeben. (Jeweils ganzzahlig) Dann wird sozusagen "Der Stift an die Position gesetzt" aber nich tnichts gezeichnet!
Das zeichnen passiert dann mit LineTo() - benötigt wiederrum 2 Koordinaten und zeichnet dann eine Linie von der aktuellen Stiftpodition an die gegebene Position. Die Stiftposition wird dann auch...
Forum: Multimedia
by jfheins,
25. Okt 2009
"ging aber nicht" ist hier ein Satz der regelmäßig Todesopfer fordert, weil Menschen Ihre Köpfe gegen die Wand donnern: :wall:
Okay, im Ernst: Poste die komplette Fehlermeldung und (wichtig) den Code den du geschrieben hast - dann kann dir auch geholfen werden ;)
Forum: Multimedia
by jfheins,
24. Okt 2009
Ich will mal so nett sein. Läuft eh nix im TV :?
procedure DrawLine(img: TImage; From, To: TPoint)
begin
img.Canvas.MoveTo(From.X, From.Y);
img.Canvas.LineTo(To.X, To.Y);
end;
Zeichnet eine Linie von einem Punkt zu einem anderen Punkt ;)
Forum: Multimedia
by jfheins,
24. Okt 2009
Fast richtig ;)
1. Brauchst du doppelt so viele Punkte wie Zacken (je einen für die Spitze nach außen und einen für den inneren)
2. wird in Delphi mit Bogenmaß gerechnet, 360° entsprechen 2*PI
Also Winkelschritt = Pi/Zackenzahl ;)
Btw.: Sagen dir Polarkoordinaten was?
P.S.: Die Links führen dich zu...
Forum: Multimedia
by jfheins,
24. Okt 2009
Um mal ein paar Denkanstöße zu geben:
Das Problem lässt sich bedeutend einfach in Polarkoordinaten lösen. Es empfiehlt sich also, die eigentliche Problemlösung in Polarkoordinaten zu rechnen und dann eine Prozedur zu schrieben, die einen Punkt von Polarkoordinaten in einen Bildpunkt umrechnet. (Darin kannst du dann gleich das Runden machen)
function PolarToPixel(r, phi: Double) : TPoint...