AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Kreisradius berechnen Tangente,Tangente,Durchpunkt
Thema durchsuchen
Ansicht
Themen-Optionen

Kreisradius berechnen Tangente,Tangente,Durchpunkt

Ein Thema von Bomberbb · begonnen am 9. Dez 2008 · letzter Beitrag vom 10. Dez 2008
Antwort Antwort
Seite 2 von 3     12 3      
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#11

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 14:27
Neue Zeichnung ?


mfg

DerDan
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
Bomberbb

Registriert seit: 23. Sep 2003
227 Beiträge
 
#12

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 14:34
jepp...

Ich kenne die Geraden und den Durchpunkt und benötige nur den Radius des Kreises.
Miniaturansicht angehängter Grafiken
unbenannt_781.jpg  
  Mit Zitat antworten Zitat
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#13

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 14:52
Den Radius und den Mittelpunkt?


-> Mann könnte eine Punkt(PT) über die Winkelhalbierende(WH) schieben.
Von diesem gedachten Punkt berechnet man den Abstand (LW) zu dem Durchpunkt(DP) und den Abstand(LG) zu einer der Lotrechten(LR) auf eine der Geraden zu diesem gedachten Punkt(PT).

Man erhält nun zwei Gleichungen die man gleich setzt und auflöst.

Dadurch erhält man den Mittelpunkt(MP) des Kreises. Der Radius ist der Abstand zwischen Mittelpunkt(MP) und Durchpunkt (DP).

Mit ein, zwei Din A4 Seiten müsste das gehen.




Das kann man sich sicher mit GeoGebra mal anschauen. http://www.geogebra.org/cms/

mfg

DerDan
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#14

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 15:50
Hallo,


hab mal eine GeoGebra Datei beigefügt. Da kannst du Dir das alles anschauen, jetzt brauchst du "nur" noch die Formeln aufstellen und ausrechnen.

Im PDF ist ein Bild davon,

sobald die Strecken (h) und (g) gleich lang sind, hast du einen Punkt (E) als Mittelpunkt für deinen Kreis gefunden.

mfg

DerDan
Angehängte Dateien
Dateityp: pdf tang_tang_durch_206.pdf (49,4 KB, 32x aufgerufen)
Dateityp: zip tang_tang_durch_146.zip (1,8 KB, 11x aufgerufen)
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
Bomberbb

Registriert seit: 23. Sep 2003
227 Beiträge
 
#15

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 16:33
Was ähnliches hatte ich mir heute nachmittag auch schon überlegt... nach 1,5 Stunden hab ich das mit dem 'nur och Auflösen' aufgegeben. Mal schauen, was der nächste Tag bringt. Nun ist der Kopf ganz schön voll.
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#16

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 9. Dez 2008, 17:13
Dann lass mal den Profi ran *g*

Ohne Verlust der Allgemeinheit (ich liebe diesen Satz) können wir das Problem in den Ursprung transformieren.

Das heißt, wir haben den Punkt im Ursprung und eine Gerade, die im Winkel alpha zur X-Achse hochgeht.

Desweiteren haben wir den Punkt P(x|y) der auf dem Kreis leigen soll.

Der Kreismittelpunkt liegt auf der X-Achse und hat somit die Koordinaten M = (Xm|0))

Aus der Tangentenbedingung erhalten wir die Formel r = Xm * sin(alpha)

Aus de Punktbedingung erhalten wir mit Pythagoras r^2 = y^2 + (Xm - x)^2
Bedenke, dass es 2 Lösungen gibt: Xm > x und Xm < X

Wenn man die 2. Gleichung nach Xm auflöst und in die erste einsetzt, erhält man für den Radius:

r = (x ± sqrt(r^2-y^2)) * sin(alpha)

Du brauchst es nicht zurücktransformieren, da dich der Kreismittelpunkt ja nicht interessiert

Falls du Fragen hast, frag

Btw.: Die Koordinatentransformation besteht aus der Translation (Verschiebung) und der Rotation um einen Winkel (multiplikation mit der Drehmatrix)

Edit: Ups, da oben ist ja noch ein r auf beiden Seiten
Ich pack mal den Hammer aus

Sooo, und jetzt kommt der hilfreiche Teil

Nachdem man statt der oberen Gleichung die implizite Gleichung

r^2=y^2+(r/Sin[a]-x)^2

benutzt, und diese in ein normales 08/15 CAS eintippt, erhält man folgende Ausgabe:
Code:
*                               2    2    2       2
               x Csc[a] - Sqrt[x + y - y Csc[a] ]
        {{r -> -------------------------------------},
                                      2
                           -1 + Csc[a]
 
                            2    2    2       2
           x Csc[a] + Sqrt[x + y - y Csc[a] ]
     {r -> -------------------------------------}}
                                  2
                       -1 + Csc[a]
Wobei Csc der Cosekans ist: Csc(a) = 1/sin(a)

Außerdem ist a = alpha, X und Y sind die Koordinaten des Punkts im gedrehten Koordinatensystem.

Wie oben prophezeit bekommst du 2 Lösungen für r.

Um die Koordinaten im gedrehten System zu erhalten muss tdu folgendes machen:

P_neu = (inv. Drehmatrix mit beta) * (P_alt - P_1)


Spätestens jetzt bist du verwirrt, deshalb mal ein Beispiel im Anhang
Angehängte Dateien
Dateityp: pdf beispiel_653.pdf (316,7 KB, 23x aufgerufen)
  Mit Zitat antworten Zitat
Bomberbb

Registriert seit: 23. Sep 2003
227 Beiträge
 
#17

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 10. Dez 2008, 10:25
Erst mal danke. Ich bin zwar auch noch auf eine Lösung gekommen, aber die war deutlich komplizierter...

Ich für meinen Fall brauche auch nur die zweite Lösung, da in meinem Fall der Gesuchte Radius immer der Größere ist.

Sag mal hast du noch einen Tip für ein kostenloses CAS? hab mir nit der Formelumstellerei doch recht schwer getan. Lange nicht mehr gemacht...
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#18

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 10. Dez 2008, 10:57
Ich hab das damit gemacht, aber das ist nichts für den produktiven Einstatz.

Neben Mathematica geht das sicher auch mit Matlab - diese beiden dürften wohl die bekanntesten/verbreitesten sein. Aber kostenlos sind die nicht (Sonst such mal auf Sourceforge nach "computer algebra system" ...)

Bedenke übrigens, dass meine "einfache" Lösung nicht zuletzt wegen der Koordinatentrafo zustande kommt. Wenn du die nicht machst, wirds komplizierter. Oder du setzt sie noch mit in die Formel ein, ist aber auch nicht ohne ...
  Mit Zitat antworten Zitat
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#19

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 10. Dez 2008, 12:56
Schaust du hier:

http://www.partow.net/projects/fastgeo/index.html



da gibt es viele Funktionen schon fertig, die du für CAD Berechnungen brauchen kannst!


mfg


DerDan

p.s. Fastgeo soll mal in Jedi Math einfließen.
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
Bomberbb

Registriert seit: 23. Sep 2003
227 Beiträge
 
#20

Re: Kreisradius berechnen Tangente,Tangente,Durchpunkt

  Alt 10. Dez 2008, 13:19
@jfheins: Genau das war mein Problem bei meinem Lösungsansatz...

@DerDan: Ich werds mir mal anschauen...

DANKE!!!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz