Einzelnen Beitrag anzeigen

cltom

Registriert seit: 22. Sep 2005
221 Beiträge
 
Delphi 12 Athens
 
#5

Re: Kreisbogen direkt zeichnen (ohne canvas.arc)

  Alt 21. Mär 2008, 11:24
Hmm, also vielleicht hat jemand noch Rat:

Zeichnen eines Kreises mit Bresenham geht soweit. Wie schränke ich nun aber auf die Strecke zwischen P1 und P2 ein?

hier:
http://de.wikipedia.org/wiki/Bresenham-Algorithmus
steht mal ganz entspannt:

Zitat:
Die obigen Implementierungen zeichnen immer nur komplette Oktanten bzw. Kreise. Wenn man nur einen bestimmten Kreisbogen von einem Winkel α bis zu einem Winkel β zeichnen will, muss man das so implementieren, dass man sich die x- und y-Koordinaten dieser Endpunkte im Vorhinein berechnet, wobei man unvermeidlich auf Trigonometrie oder Wurzelrechnung zurückgreifen muss (s. a. Heron-Verfahren). Dann lässt man den Bresenham-Algorithmus über den kompletten Oktanten bzw. Kreis laufen und setzt die Pixel aber nur dann, wenn sie in den gewünschten Bereich fallen. Nach Beendigung dieses Kurvenstücks kann man den Algorithmus vorzeitig abbrechen.
Jo, schon, aber wie prüfe ich das? Wie kann ich bei einem Oktanten sagen, ob seine Punkte auf dem Weg zwischen P1 und P2 liegen?
  Mit Zitat antworten Zitat