| |
VB.NET - Ein- und UmsteigerRe: Kreis-Berechnung | | | Autor: HenryV | Datum: 21.08.23 18:57 |
| Stichworte Dreieck, Umkreis
'Die 3 Punkte
Dim x1 As Double = 1
Dim y1 As Double = 2
Dim x2 As Double = 4
Dim y2 As Double = 3
Dim x3 As Double = 5
Dim y3 As Double = 6
'Berechnen der Abstände (Dreieckseitenlängen)
Dim a As Double = Math.Sqrt((x2 - x1) ^ 2 + (y2 - y1) ^ 2)
Dim b As Double = Math.Sqrt((x3 - x2) ^ 2 + (y3 - y2) ^ 2)
Dim c As Double = Math.Sqrt((x1 - x3) ^ 2 + (y1 - y3) ^ 2)
'Berechnen des halben Dreiecksumfangs
Dim s As Double = (a + b + c) / 2
'Berechnen des Kreisradius (Heronschen Formel)
Dim radius As Double = (a * b * c) / (4 * Math.Sqrt(s * (s - a) * (s - b) * (s _
- c)))
'Berechnen der Koordinaten des Kreismittelpunkts:
Dim d As Double = 2 * (x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2))
Dim x As Double = ((x1 ^ 2 + y1 ^ 2) * (y2 - y3) + (x2 ^ 2 + y2 ^ 2) * (y3 - _
y1) + (x3 ^ 2 + y3 ^ 2) * (y1 - y2)) / d
Dim y As Double = ((x1 ^ 2 + y1 ^ 2) * (x3 - x2) + (x2 ^ 2 + y2 ^ 2) * (x1 - _
x3) + (x3 ^ 2 + y3 ^ 2) * (x2 - x1)) / d
'Ausgabe Kreismittelpunkt und Radius
Console.WriteLine("Kreismittelpunkt: ({0}, {1})", x, y)
Console.WriteLine("Radius: {0}", radius) | |
Kreis-Berechnung | | | Autor: BasicOpa | Datum: 21.08.23 16:46 |
| Hallo zusammen,
kann mir ein Mathe-Spezialist den VB-Code zur Berechnung von Kreismittelpunkt und Radius zur Verfügung stellen. Wenn 3 Punkte auf dem Kreis mit ihren X- und Y-Koordinaten zur Verfügung sind?
Wäre mir eine große Hilfe ...
Viele Grüße
BasicOpa | |
Re: Kreis-Berechnung | | | Autor: BasicOpa | Datum: 21.08.23 23:01 |
| Hallo HenryV,
herzlichen Dank für diese tolle Hilfe.
Ich werde den Code anwenden und mich nochmal melden, wenn ich alles hinbekommen habe.
Herzliche Grüße
BasicOpa | |
Re: Kreis-Berechnung | | | Autor: sv00010 | Datum: 24.08.23 07:40 |
| Eventuell wäre es auch eine gute Idee, die ganzen Mathe-Probleme hier im Forum zu sammeln und aus den gefundenen Lösungen eine Hilfs-Klassenbibliothek zu erstellen, welche dann nur noch in das eigene Projekt eingebunden werden muss. | |
Re: Kreis-Berechnung | | | Autor: BasicOpa | Datum: 24.08.23 11:42 |
| Hallo HenryV,
Ich dachte, mein Problem sei gelöst. Die mittels deiner freundlichen Hilfe ermittelten Werte ergeben allerdings nicht jene Werte, die es sein müssten. Ich weiß das, weil ich diese aus einer anderen Quelle kenne, deren Funktionen mit allerdings nicht zugänglich sind. Weder die Logik und der Code schon gar nicht.
Es hat eine Weile gedauert, bis ich dahinter kam, an was das liegt. Und ich hoffe als "Nicht-Mathematiker", dass ich da nicht irre. Die Aufgabe, um deren Lösung ich bat ist ja, aus drei x- und y-Koordinaten auf einem Kreis-Ausschnitt den Radius und den Kreis-Mittelpunkt zu ermitteln. Ich habe mir die jeweiligen 3 aneinander gelegten Abschnitte angesehen ... und musste feststellen, dass es dabei gar nicht um einen Kreis-Auschnitt handelt. Denn die Werte fortgesetzt führen nicht zu einem geschlossenen Kreis. Es bleibt eine Lücke. Wo kein Kreis ist, ist wohl die Suche nach dessen Radius ein hoffnungsloses Unterfangen.
Der Radius sollte mir in Verbinding mit der vorliegenden Länge des Bogens von Punkt 1 zu Punkt 2 die Krümmung der einzelnen Abschnitte liefern. Was mir also helfen würde, ist der Weg zu diesen Werten, ohne einen Radius verfügbar zu haben ...
Gleichwohl möchte ich mich noch einmal herzlich für die Hilfe bedanken.
BasicOpa | |
Re: Kreis-Berechnung | | | Autor: Theo_kkv | Datum: 21.11.23 11:45 |
| Hallo,
Deine Ausführungen zu den 3 Ausgangskoordinaten sind seltsam, denn nach der !ebenen 2-Dimensionalen! Geometrie ist ein Kreis durch 3 Punkt (mithin seinen Kooridnaten) eindeutig beschrieben. Bei nur 2 Punkten, wie Du es erwähnst kann ein Kreis nicht eindeutig definiert werden, weil der restliche Peripherieverlauf an der Verbindungsgeraden Punkt1-Punkt2 beliebig gespiegelt werden kann.
Es ist 100 % möglich mit den richtigen Formeln die gewünschten Werte zu berechnen.
Grüße
Tom (Dipl.-Vermessungsing.) | |
Re: Kreis-Berechnung | | | Autor: BasicOpa | Datum: 23.11.23 23:44 |
| Hallo,
ich hab' meine ursprüngliche Frage noch mal gelesen. Mich wundert jetzt deine Aussage, ich hätte danach gefragt, wie mein Problem "mit 2 Pubkten" bewerkstelligt werden könnte. Denn ich schrieb wörtlich "Wenn 3 Punkte auf dem Kreis mit ihren X- und Y-Koordinaten zur Verfügung sind?"
Viele Grüße
BasicOpa | |
Re: Kreis-Berechnung | | | Autor: Manfred X | Datum: 24.11.23 07:46 |
| Hallo!
Deine Eingangsfrage zum Mittelpunkt und Radius eines Kreises, der durch drei Punkte in
der Ebene gegeben ist, hat HenryV korrekt beantwortet.
Sind nur zwei Punkte gegeben, ist jeder Punkt ein Kreismittelpunkt, der zu den beiden
gegebenen Punkten den gleichen Abstand besitzt. Legt man den Mittelpunkt genau zwischen
diese Punkte, ist die Krümmung durch einen Halbkreis gegeben. Je weiter man diesen Punkt
(auf einer Gerade) von den gegebenen Punkten entfernt, desto geringer wird die Krümmung
der Kreislinie zwischen diesen beiden Punkten.
Als zusätzliche Angabe nennst Du die Länge der Bogenlinie zwischen den beiden Punkten.
Bogenlänge = Radius * Pi * Alpha / 180
Nennen wird die Distanz zwischen den beiden Punkten DIS gilt:
Alpha = 2 * Arcsin(DIS/(2*Radius))
Die Distanz DIS berechnet sich aus den Koordinaten nach Pythagoras.
Probiere mal, ob das Dein Problem löst.
Die zweite Formel in die erste einsetzen und nach dem Radius umstellen. | |
Re: Kreis-Berechnung | | | Autor: BasicOpa | Datum: 25.11.23 16:18 |
| Hallo Manfred,
... genau ... und deshalb hab' ich's ja auch genau so gemacht. Mit Erfolg. Drum habe ich mich ja über Theo's Kommentar gewundert ... und drauf reagiert.
Viele Grüße
BasicOpa | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|