![]() |
---|
Hallo, ich habe folgendes Problem: Ich habe eine Fläche im Raum aus folgenden vier Punkten gegeben: Die angegebenen Punkte spannen ein Trapez im Raum auf also quasi ein Sektor, wie in der beigefügten Abbildung zu erkennen ist. Der Sektor hat in der y-z-Ebene eine Steigung von und in der Ebene an beiden Enden und eine Spreizung von 15°. Nun habe ich noch eine Gerade gegeben und muss den Schnittpunkt zwischen dem Sektor und der Geraden analytisch berechnen. Mir ist bewusst, dass man eine Schnittpunkt zwischen Ebene und Gerade ganz einfach analytisch bestimmen kann, jedoch bringt mir eine Ebene aus drei Punkten keine trapezförmige Fläche, die ich benötige. Also benötige ich eine Art Ebenengleichung um diese mit der Geradengleichung gleichzusetzen um somit mein Schnittpunkt zu berechnen. Vielen Dank schonmal. Grüße Jonas Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen." |
Hierzu passend bei OnlineMathe: Schnittpunkte bestimmen Bestimmtes Integral (Mathematischer Grundbegriff) Flächenberechnung durch Integrieren Online-Übungen (Übungsaufgaben) bei unterricht.de: Ebene Geometrie - Einführung Flächeninhalt und Umfang eines Trapezes Geraden im Raum Grundbegriffe der ebenen Geometrie Lagebeziehung Gerade - Ebene (in Normalenform) Lagebeziehung Gerade - Ebene (in Parameterform) Lineare Gleichungssysteme Ebene Geometrie - Einführung Flächeninhalt und Umfang eines Trapezes Geraden im Raum Grundbegriffe der ebenen Geometrie Lagebeziehung Gerade - Ebene (in Normalenform) Lagebeziehung Gerade - Ebene (in Parameterform) |
![]() |
![]() |
Anbei ist noch ein Plot wie das mit dem Schnittpunkt des Sektors und der Geraden gemeint ist. |
![]() |
"Mir ist bewusst, dass man eine Schnittpunkt zwischen Ebene und Gerade ganz einfach analytisch bestimmen kann, jedoch bringt mir eine Ebene aus drei Punkten keine trapezförmige Fläche" Du hast doch 4 Punkte, oder? Und wozu brauchst du die rapezförmige Fläche? "die ich benötige. Also benötige ich eine Art Ebenengleichung" Wenn Punkte A,B,C in der Ebene liegen, dann berechnet man das Kreuzprodukt , sagen wir dass es ist. Dann ist die Ebenengleichung . Und bestimmt man, indem man z.B. die Koordinaten des Punktes in diese Gleichung einsetzt. |
![]() |
. "Die angegebenen >Punkte?!< ein Trapez im Raum auf" "Und wozu brauchst du die rapezförmige Fläche?" DrBoogie , hast du denn gelesen, was dem Fragesteller am Schluss alles "bewusst" ist ? .. :-) und er will doch noch herausbekommen, ob der Durchstosspunkt einer (von ihm lustigerweise nicht!! genauer beschriebenen) Geraden innerhalb der genannten ->rapezförmigen Fläche herumliegt .. . |
![]() |
Hallo DrBoogie, vielleicht noch ein paar Infos. Beim Start eines Flugzeuges muss eine gewisse Hindernisfreiheit gewährleistet sein. Das bedeutet, wenn ein Hindernis an beliebiger Position (die Gerade), den Sektor (die trapezförmige Fläche) "durchsticht" ist die Hindernisfreiheit nicht mehr gewährleistet ansonsten schon. Deshalb benötige ich diese trapezförmige Fläche. Habe mir überliegt die Fläche mit 4 anderen Ebenen einzuschließen. |
![]() |
So wie ich das sehe, wirst du deine Aufgabe in zwei Schritten lösen müssen: Schnitt der Geraden mit der (unbegrenzten) Ebene (dabei darfst du dir von deinen vier Punkten drei aussuchen; dein Viereck ist tatsächliche zum Glück ein ebenes Viereck) Überprüfung, ob der Schnittpunkt innerhalb der Vierecks liegt. Zu hast du ja geschrieben, dass es dir klar ist und DrBoogie hat dir auch nochmals skizziert, wie man dabei vorgehen kann. Zu findest du in der einschlägigen Literatur einige mögliche Algorithmen und auch Beispiele für die Implementation in unterschiedlichen Programmiersprachen, wenn du zB unter "Punkt in Polygon" nachschlägst. Sehr oft wirst du auf den Jordan-Algorithmus (Ray Casting Algorithus) stoßen). Dass dein Polygon im Raum herumliegt macht die Sache ein klein wenig aufwändiger, dass es brav konvex ist, ist aber von Vorteil. Oder betrachtest du nur die Schnittpunkte mit Geraden, die zur z-Achse parallel sind, so wie das deine nachgereichte Zeichnung nahelegt? Dann würde wiederum ein einfacheres Problem vorliegen. |
![]() |
Danke Roman-22 für deine Antwort. Deine Vorgehensweiße ist sehr hilfreich. Ich habe nochmal überlegt und werde das jetzt wahrscheinlich so angehen: Zuerst projezier ich mir die Fläche auf die Ebene und kläre zunächst mit einer If-Abfrage, ob das "Hindernis" in der projezierten Fläche liegt. Wenn das der Fall ist prüfe ich mit einer anderen If-Abfrage, ob das Hindernis die Ebene (aus drei Punkten) quasi in der Höhe durchstößt. Ich denke so müsste das auch funktionieren. |
![]() |
Ich entnehme deiner Antwort, dass, wie vorhin im letzten Absatz vermutet, dich nur senkrechte Geraden interessieren. Dann ist deine Vorgehensweise sicher zielführend. Die Überprüfung, ob der xy-Ebene) ein Punkt innerhalb des Grundrisses deines Vierecks liegt, gestaltet sich wegen der besonderen Form des Vierecks ja besonders einfach und sollte ohne aufwändigen Algorithmus mit wenigen Verzweigungen erledigt sein. Und für die Höhenkontrolle musst du ja nur die ,y-Koordinaten in die Ebenengleichung einsetzen und prüfen ob die Höhe deines Hindernisses kleiner ist als der errechnete Funktionswert. |