Kreise im Raum ermitteln



  • Ich brauch doch aber auch die Funktionsgleichungen der Normalen in den Punkten. Nur die hab ich nicht. Es stehe wie gesagt nur die Normelenwerte zu jedem Punkt da. Um diese zu ermitteln brauch man ja auch nur den Punkt in die Funktionsgleichung einzusetzen. Und diese Funktionsgleichung ist mir nicht bekannt. Oder hab ich jetzt ein Denkfehler?



  • Im 3D Raum ist Ein Kreis Eindeutig bestimmt Durch 8 Kontrollpunkte. Mit dreien Geht es Einfach Nicht, Da eine Dimension Fehlt.
    Ein Kreis Kann um Seine eigene Achse Gedreht Sein im 3D-Raum, wobei Dies im 2D-Raum Nicht Möglich ist. Um Dies zu Kompensieren Braucht man Mindestens n+2 Andere Punkte. Im 3D-Raum Ist n=3, Also Braucht man Mindestens 5 Weitere Punkte.
    Um Es Klarer zu Formulieren. Im 2D-Raum Ist ein Kreis Bestimmt Durch 3 Punkte. Jedoch Nicht im 3D-Raum. Denn ein Kreis Ist Eigentlich ein 2D-Objekt. Wenn Dieses in den 3D-Raum eintaucht, Muss Die Ebene, in Der es Liegt, Mit Angegeben sein. Eine Ebene Braucht 4 Angaben. Die 8. Angabe Steckt In der Rotation Des Kreises um Seine eigene Achse.
    Wenn Du Dies in C++ Umsetzt, Sehe Ich Keine Probleme bei der Umsetzung.



  • Wenn ich drei Punkte im 3D-Raum habe, dann liegen die in einer Ebene, ein Kreis, der diese drei Punkte enthalten soll muß also auch in dieser Ebene liegen. Ich bekomme also eine Ebene und drei Punkte, damit also einen eindeutigen Kreis. Mehr Punkte braucht's nicht.

    Zu 4 Punkten findest Du im allgemeinen keinen Kreis mehr... wenn sie nicht koplanar sind.

    Aber unabhängig davon sehe ich auch nicht, wie das bei der Umsetzung helfen sollte.

    @Mister Wing: was für eine Funktionsgleichung?



  • @kreisforscher Ein Kreis brauch nur 3 Punkte um konstruiert zu werden. Wenn alle drei z-Koordinaten zum Beispiel Null sind, befinden wir uns wieder im R². Wenn man Ebene auf die der Kreis liegt kennt, kann man das 3-dimensionale Problem in eine 2-dimensionales reduzieren.

    @Jester Ich meinte die Parameterdarstellung der Normalen.



  • 3 Punkte und die Ebene. Eine Ebene braucht 4 Angaben (x, y, z, d). Das Macht 7 Angaben. Da der Kreis sich Um seine Eigene Achse drehen kann, noch die 8. Angabe.



  • Drei Punkte legen eine Ebene fest und nur in dieser Ebene kann sich ein Kreis befinden, der diese 3 Punkte enthält. Der Kreis ist also bereits durch 3 Punkte eindeutig bestimmt. Probier's aus. Und wenn Du schon dabei bist: Nimm mal folgende 8 Punkte: die Eckpunkte eines beliebigen Würfels (etwa (0,0,0),(0,0,1),(0,1,0),(0,1,1),(1,0,0),(1,0,1),(1,1,0),(1,1,1)) und zeig mir wie ein Kreis aussieht, der die enthält. Oder wenn 8 doch zu viel ist, zeig mir einen Kreis, der mehr als 4 dieser Punkte enhält. Vier geht hier noch, weil einige in der selben Ebene liegen. Bei einem Tetraeder kriegst Du das aber schon nicht mehr hin.



  • Mister Wing schrieb:

    Ich meinte die Parameterdarstellung der Normalen.

    Was soll das denn bitte sein?



  • @kreisforscher

    3 Punkte und nicht mehr.
    3 Punkte haben übrigens 9 "Angaben" aus denen du deine 4 für die Ebene
    bestimmen kannst. Diese achte "Angabe" wegen dem Um-Sich-Selbst-Drehen ist
    vollkommen irrelevant.

    Zurück zum Ausgangsproblem:

    Wenn du keine Ahnung hast, was diese Normalen bedeuten, würde ich trotzdem
    vorschlagen, du nimmst den Divide&Conquer-Ansatz und versucht so viele mögliche
    Kreise durch Zusatzbedingungen auszuschalten. Ich denke es ist effizienter, wenn
    du Kreise verschmelzt, anstatt Kreise mit nur einzelnen Punkten, wie du es
    machen willst.
    Diese Zusatzbedingung durch diese Normalen, die Jester vorgeschlagen hat,
    könnte auch so funktionieren, ohne dass du weißt was diese Normalen eigentlich
    bedeuten.

    Übrigens deine Parameterdarstellung eines Normalenvektors existiert wohl eher nur sehr theoretisch. Eine Ebene hat eine Parameterdarstellung
    (ax + by + cz = d), wobei (x y z)^T alle Ortsvektoren darstellen, die in
    dieser Ebene liegen.



  • Nur der Korrektheit halber: eine Ebene hat nicht 4, sondern 3 Freiheitsgrade. Das könnten z.B. die Richtung des Normalenvektors (2 Freiheitsgrade) plus der Abstand zum Ursprung sein. (bei der Normalengleichung mit 4 Parametern können beide Seiten der Gleichung mit einem freien Parameter mutlipliziert werden, man kann z.B. die Gleichung auf d = 1 normieren)
    Der Kreis hat in dieser Ebene wiederum 3 Freiheitsgrade, z.B. Mittelpunkt (2 FG) und Radius.
    Zusammen werden also aus den 9 Freiheitsgraden (z.B. jeweils 3 x-, y- und z-Koordinaten) der drei Punkte die Freiheitsgrade des Kreises im Raum hergeleitet, übrig bleiben 3 Freiheitsgrade die die Verteilung der Punkte auf dem Kreis beschreiben (z.B. pro Punkt der Winkelabstand zu einem gedachten "Anfangs"Punkt auf dem Kreis.) und für das gestellte Problem nicht weiter interessant sind.



  • Hmmm.

    Wie sieht deine genormte Ebene bei E: ax + by + cz = 0 aus?

    Ich hab bis jetzt immer in dem Glauben gelebt, dass eine Ebene 4 Freiheitsgrade
    besitzt. Aber du darfst ihn gerne zerstören.



  • einfach durch sqrt(a2+b2+c^2) teilen



  • 😃

    Scherzkeks. Ich meinte die mit d = 1. Wegen dem Ich-Brauch-Nur-3-Freiheitsgrade.



  • Ich verstehe das Problem nicht. Offensichtlich lässt sich jede Ebene durch Anfabe des Normalenvektors und des Urpsprungsabstands beschreiben. Das sieht jetzt nach 4 Freiheitsgraden aus, das stimmt aber nicht wirklich: Der Normalenvektor kann nämlich normiert werden. Wenn ich Dir jetzt also die ersten beiden Werte des Normalenvektors nenne, dann kannst Du den dritten bis auf das Vorzeichen rauskriegen. Also einigen wir uns darauf, dass ich so normiere, dass du den in Frage kommenden Wert, der >=0 ist, nehmen mußt.

    Offensichtlich lässt sich jede Ebene so beschreiben. Ich kann Dir also meine gewünschte Ebene durch Angabe der ersten beiden Werte des Normalenvektors und den Ursprungsabstand mitteilen. Wieviele Freiheitsgrade sind das?



  • 3 und überredet.



  • Okay, zugegeben, die Sache mit d = 1 war unüberlegt.
    Mit dem Einheitsnormalenvektor passts dann aber. Man kann das Ganze auch in Polarkoordinaten rechnen, dann sind die Raumwinkel des Normalenvektors θ und φ sowie der Abstand r der Ebene zum Ursprung genau die drei Freiheitsgrade.
    Für den Mittlepunkt des Kreises nimmt man auch wieder dessen Polarkoordinaten, bei gegebenem Raumwinkel ist dessen Abstand zum Ursprung durch die Ebene vorgegeben -> 2 Freiheitsgrade.


Anmelden zum Antworten