Einzelnen Beitrag anzeigen

Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Tangenten und Kreis

  Alt 8. Jul 2006, 13:17
Probiers mal so:
Der Nutzer klickt auf das Form um den Mittelpunkt festzulegen. Dann ein zweiter Klick um den Radius festzulegen. Beim MouseDown-Event bekommst du die x,y-Koordinaten, glaub ich. Dann ein dritter Klick für den Punkt.
Dann die erste Rechnung. Falls der ABstand erster Punkt<->dritter Punkt kleiner als Abstand 1.Punkt<-> 2.Punkt, dann gibts du ein showmessage aus und brichst die Berechnung ab.
Ich persönlich würde nicht die angegebene Gleichung benutzen, sondern mir selbst Gedanken über die Berechung machen. (Siehe Annhang)
Beta bekommst du aus den Koordinaten von Punkt 1 und 3, alpha aus der Kenntnis von Abstand 1 und 3 sowie dem Radius. Gamma ist dementsprechend (alpha-beta). Mit Gamma kannst du jetzt recht einfach den oberen Tangentenpunkt berechnen. Per penpos und lineto kannst du jetzt die Tangente malen. Die Polare ist dann auch nur noch ein Einzeiler, da du ja schon die Koordinaten der Berührpunkte kennst. Insgesamt hast du damit einen recht schönen Weg, der insgesamt nicht mehr als 10 Zeilen benötigen sollte, was bei der Bewertung sicher gut ankommt.
Miniaturansicht angehängter Grafiken
unbenannt_535.jpg  
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat