Auswahl Aktion im Forum Suche Kontakt Für Mitglieder Mathematisch für Anfänger Wer ist Online | |
| Autor |
Volumen zwischen 2 Dreiecken im 3D-Raum |
|
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Themenstart: 2012-07-30 16:52
|
Hallo!
Ich hätte ein sehr kniffeliges Geometrieproblem und hoffe ihr könnt mir weiterhelfen. Ich arbeite an Triangulierungen und müsste das Volumen zwischen 2 Dreiecken im Raum berechnen. Also im Normalfall sieht das so aus:
Dreieck 1 ist durch die 3D-Punkte p0,p1,p2 definiert. Dreieck 2 erhält man dadurch, dass man Dreieck 1 "in die Höhe zieht". Konkret heißt das, dass sich die Punkte von Dreieck 2 (p0', p1', p2') von jenen von Dreieck 1 nur in der z-Koordinate unterscheiden. Dadurch kann ich mir auch die Seitenlängen a,b,c errechnen, wobei a der Abstand von p0 und p0' ist, b der Abstand von p1 zu p1' und c der Abstand von p2 zu p2'. So weit, so gut.
Nun möchte ich das Volumen berechnen, welches zwischen den beiden Dreiecken liegt. Aus einer Formelsammlung weiß ich, dass ich dieses berechne indem ich mir zuerst den Querschnitt AQ berechne, der senkrecht zu den Kanten steht und diesen dann mit (a+b+c)/3 multipliziere (siehe: schief abgeschnittenes, schräges Prisma). Immer noch kein Problem.
Jetzt wird es aber kniffelig. In manchen Fällen kann es vorkommen, dass Dreieck 2 nicht vollständig über bzw. unter Dreieck 1 liegt, sondern dass sich die beiden Dreiecke überschneiden. In diesem Fall müsste ich das Volumen berechnen, indem ich 2 Teilvolumina berechne, die sich in der Schnittgeraden berühren. Da ich aus Performancegründen aber nicht über die Schnittgerade rechnen kann, suche ich eine Formel welche es mir ermöglicht das Volumen trotzdem zu errechnen (und zwar nur durch Kenntnis der Punkte bzw. der Längen a,b,c).
Ein Beispiel:
p0 = [-18.5 1.1 5.15]
p1 = [-16.0 -7.0 8.63]
p2 = [-10.4 -1.4 12.4]
p0' = [-18.5 1.1 5.98]
p1' = [-16.0 -7.0 8.10]
p2' = [-10.4 -1.4 16.0]
Dadurch ergeben sich Seitenlängen von:
a = 0,83
b = -0,53
c = 3,6
AQ ist die Querschnittsfläche (z=const) und kann ebenfalls einfach berechnet werden.
Was ich nun suche ist so etwas wie eine effektive Höhe h, sodass gilt:
V = AQ * h
Hat irgendjemand eine Idee wie man sich eine Formel für h herleiten kann? Ich habe selbiges für den 2D Fall gemacht (also mit Linien statt Dreiecken) und konnte perfekt eine Formel konstruieren. Leider bin ich am 3D Fall gescheitert.
Lg
|
Profil
Quote
Link |
viertel
Senior  Dabei seit: 04.03.2003 Mitteilungen: 21599
Aus: Hessen
 |     Beitrag No.1, eingetragen 2012-07-30 17:34
|
Hi G_G
Du machst dir das Leben unnötig schwer.
In deiner Version nimmst du eines der Dreiecke als Grundfläche und suchst dann als Höhe den Abstand zwischen den Ebenen der beiden Dreiecke. Geht natürlich auch.
Der Querschnitt des Körpers ist dann eine der Dreiecksflächen.
Betrachte mal dieses Bild:
Der Querschnitt (lila) dieser Dreieckssäule („Toblerone“, markiert durch die gelben Stäbe) ist nun parallel zur Bodenfläche und die Höhe einfach der vertikale Versatz der beiden Dreiecke. Die Querschnittsfläche ist leicht zu berechnen (was sind die Koordinaten des lila Dreiecks?).
Gruß vom ¼
-----------------
[ Nachricht wurde editiert von viertel am 30.07.2012 21:05:18 ]
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.2, vom Themenstarter, eingetragen 2012-07-30 22:07
|
Hi ¼!
Danke erstmal fuer deine Antwort und die tolle Skizze! Also, den Querschnitt AQ berechne ich genau so, dass ich eines der Dreiecke in die xy-Ebene projiziere (wie das lila Dreieck). Das ist mir klar. In meinem Fall sind aber die rote und die blaue Dreiecksflaeche *nicht* parallel wie in deinem Bild. Solange das rote Dreieck ueber (oder unter) dem bleuen liegt, kann ich das Volumen auch recht einfach berechnen:
V = AQ * (1/3)*(Summe der 3 Seitenlaengen)
Was aber ist, wenn sich die Dreiecke ueberschneiden? Stell dir vor, die Eckpunkte des roten und blauen Dreiecks an der rechtesten Saeule werden vertauscht, dann schneiden sich die Dreiecke und das Volumen verringert sich. Kann man eine Aussage treffen um wie viel es sich verringert?
Lg
|
Profil
Quote
Link |
viertel
Senior  Dabei seit: 04.03.2003 Mitteilungen: 21599
Aus: Hessen
 |     Beitrag No.3, eingetragen 2012-07-30 22:35
|
Oha
Dann hatte ich das „in die Höhe zieht“ falsch verstanden.
Die Ecken werden also unterschiedlich angehoben.
Nehmen wir den einfachen Fall: die Dreiecke durchdringen sich nicht.
Nach dem Cavalieri-Prinzip kannst du dann die Ecken des roten Dreiecks (bleiben wir dabei: rot ist das untere Dreick) in die xy-Ebene runter ziehen, die jeweils darüber liegenden blauen um die gleiche Strecke. Das Volumen ändert sich dabei nicht.
Nun hast du eine Dreieckssäule, die oben schräg angeschnitten ist (der lila Deckel ist parallel zum roten Boden).
Diesen Anschnitt kannst du aus zwei Dreieckspyramiden berechnen.
Ob das dann insgesamt auf deine Formel aus Beitrag #2 rausläuft habe ich nicht nachgerechnet.
Wenn sich die Dreiecke durchdringen wird es lästig.
Die Schnittkante ist zu berechnen. Das ist nicht schwer, man muß nur auf die Fälle aufpassen, wo sie verläuft.
Dann stellst du eine vertikale Ebene auf, die die Schnittkante enthält. Dadurch wird die ursprüngliche Säule in zwei zerlegt, deren Boden und Deckel keinen Schnitt mehr haben.
[ Nachricht wurde editiert von viertel am 30.07.2012 22:46:43 ]
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.4, vom Themenstarter, eingetragen 2012-07-31 21:02
|
Ok, also über die Schnittgerade kann ich es auf jeden Fall berechnen.
Achja, noch eine kleine Anmerkung: Weder das rote noch das blaue Dreieck müssen parallel zur xy Ebene liegen. Also es ist nicht gesagt, dass eines der beiden Dreiecke so wie das lila farbene (=Querschnittsfläche AQ) geneigt ist. Macht aber in diesem Fall keinen Unterschied.
Aus reiner Neugier würde es mich trotzdem interessieren, ob es nicht eine einfachere Formel gibt? Ich habe mal die Skizze vom 2D Fall (also mit Linien statt Dreiecken) aufgezeichnet, für den ich mir wie gesagt schon eine Formel hergeleitet habe.
Links ist der Fall wo sich rote und blaue Linie nicht überschneiden. Rechts ist der Fall dargestellt, wo sich die Linien schneiden. Diese Formel habe ich mir hergeleitet und anhand von Beispielen geprüft. Wenn man eine der kantenlängen (zB: a) auf 0 setzt, erhalten wir den Grenzfall zwischen linker und rechter Variante und beide Formeln führen zum selben Ergebnis. Sollte also passen.
Den 3D Fall habe ich ebenfalls skizziert (so gut ich es halt konnte ):
Auch hier ist links wieder der "Normalfall" zu sehen, und die Formel für das aufgespannte Volumen (aus Formelbuch). Erinnert stark an den 2D Fall, nicht wahr? Wenn ich wie rechts den Fall habe, dass sich die Dreiecke durchdringen, dann müsste es doch auch möglich sein sich den fehlenden Faktor zu berechnen, sodass die Formel stimmt. Bloß wie?
Ich denke, dieses Problem hat durchaus einen gewissen Fun-Faktor. Vielleicht gibt es ja ein paar Matherätsel-Fans, die hierzu eine Lösung finden können!
Lg
|
Profil
Quote
Link |
viertel
Senior  Dabei seit: 04.03.2003 Mitteilungen: 21599
Aus: Hessen
 |     Beitrag No.5, eingetragen 2012-07-31 22:37
|
2012-07-31 21:02 - Grossmeister_G in Beitrag No. 4 schreibt:
Ok, also über die Schnittgerade kann ich es auf jeden Fall berechnen. Dann ist es doch gut, oder?
Grossmeister_G schreibt:
Achja, noch eine kleine Anmerkung: Weder das rote noch das blaue Dreieck müssen parallel zur xy Ebene liegen. Also es ist nicht gesagt, dass eines der beiden Dreiecke so wie das lila farbene (=Querschnittsfläche AQ) geneigt ist. Macht aber in diesem Fall keinen Unterschied.
Ich habe ja auch nicht gesagt, daß Boden oder Deckel parallel zum Querschnitt sein muß. Aber nach dem Prinzip von Cavalieri kann man den Körper so scheren, daß oBdA der Boden parallel ist.
Grossmeister_G schreibt:
Aus reiner Neugier würde es mich trotzdem interessieren, ob es nicht eine einfachere Formel gibt?
Einfacher als was? Deine Formel (wobei die Längen der vertikalen Seitenkanten sind) für den nicht-durchdringenden Fall (die ich inzwischen nach meinem Verfahren nachgerechnet und bestätigt habe) kann doch gar nicht mehr einfacher sein.
Grossmeister_G schreibt:
Ich habe mal die Skizze vom 2D Fall (also mit Linien statt Dreiecken) aufgezeichnet, für den ich mir wie gesagt schon eine Formel hergeleitet habe.
Links ist der Fall wo sich rote und blaue Linie nicht überschneiden. Rechts ist der Fall dargestellt, wo sich die Linien schneiden. Diese Formel habe ich mir hergeleitet und anhand von Beispielen geprüft. Wenn man eine der kantenlängen (zB: a) auf 0 setzt, erhalten wir den Grenzfall zwischen linker und rechter Variante und beide Formeln führen zum selben Ergebnis. Sollte also passen. Ok, die Formel konnte ich auch verifizieren.
Grossmeister_G schreibt:
Den 3D Fall habe ich ebenfalls skizziert (so gut ich es halt konnte ):
Auch hier ist links wieder der "Normalfall" zu sehen, und die Formel für das aufgespannte Volumen (aus Formelbuch). Erinnert stark an den 2D Fall, nicht wahr? Wenn ich wie rechts den Fall habe, dass sich die Dreiecke durchdringen, dann müsste es doch auch möglich sein sich den fehlenden Faktor zu berechnen, sodass die Formel stimmt. Bloß wie? Das rechte Bild ist falsch. Die Durchdringung kann nicht nur teilweise mit einer Spitze sein. Schau dir nochmal mein zweites Bild in Beitrag #3 an. Die beiden Schnittpunkte der Dreieckskanten müssen auf der Außenfläche der gelben Dreieckssäule liegen.
Grossmeister_G schreibt:
Ich denke, dieses Problem hat durchaus einen gewissen Fun-Faktor. Vielleicht gibt es ja ein paar Matherätsel-Fans, die hierzu eine Lösung finden können!
Bin dran…
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.6, vom Themenstarter, eingetragen 2012-07-31 22:51
|
Ich habe ja auch nicht gesagt, daß Boden oder Deckel parallel zum Querschnitt sein muß. Aber nach dem Prinzip von Cavalieri kann man den Körper so scheren, daß oBdA der Boden parallel ist.
Verstehe! Das Prinzip von Cavalieri kannte ich nicht, klingt aber einleuchtend!
Einfacher als was? Deine Formel  (wobei  die Längen der vertikalen Seitenkanten sind) für den nicht-durchdringenden Fall (die ich inzwischen nach meinem Verfahren nachgerechnet und bestätigt habe) kann doch gar nicht mehr einfacher sein. Es geht nur noch darum eine aehnlich einfache Formel fuer den durchdringenden Fall zu finden...
Das rechte Bild ist falsch. Die Durchdringung kann nicht nur teilweise mit einer Spitze sein. Schau dir nochmal mein zweites Bild in Beitrag #3 an. Die beiden Schnittpunkte der Dreieckskanten müssen auf der Außenfläche der gelben Dreieckssäule liegen.
Du hast recht!
Bin dran…
Bin gespannt :)
|
Profil
Quote
Link |
viertel
Senior  Dabei seit: 04.03.2003 Mitteilungen: 21599
Aus: Hessen
 |     Beitrag No.7, eingetragen 2012-07-31 23:20
|
Auch hier können wir wieder scheren, daß eine Fläche parallel zum Querschnitt ist (hinten das Original, vorne rot parallel):
Daraus müßte man was machen können, ich habe auch schon eine Idee. Ist nur ne Fleißarbeit
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.8, vom Themenstarter, eingetragen 2012-08-07 21:55
|
Konntest du eine Lösung finden?
Liebe Grüße
|
Profil
Quote
Link |
viertel
Senior  Dabei seit: 04.03.2003 Mitteilungen: 21599
Aus: Hessen
 |     Beitrag No.9, eingetragen 2012-08-07 21:56
|
Ich bin die Fleißarbeit noch nicht angegangen…
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.10, vom Themenstarter, eingetragen 2012-08-24 12:43
|
Hi!
Ich wollte mal fragen ob dieser Thread noch aktiv ist? Ich würde das Ergebnis nämlich für eine bestimmte Berechnung benötigen, sofern es machbar ist. Falls es zu komplex ist, und man nicht umher kommt die Schnittgerade zu berechnen, müsste ich mir nämlich einen anderen (weit weniger eleganten) Lösungsweg überlegen. Wäre ein Wahnsinn, wenn das jemand lösen könnte ;) !
Lg
|
Profil
Quote
Link |
StefanVogel
Senior  Dabei seit: 26.11.2005 Mitteilungen: 1466
Aus: Raun
 |     Beitrag No.11, eingetragen 2012-08-26 07:35
|
 
\ Hallo Grossmeister\_G, die Formel für die effektive Höhe muss auch erreichbar sein, wenn man über die Schnittgerade rechnet, das Ergebnis in Grundfläche mal Faktor zerlegt und dann den Faktor vereinfacht. Damit die ganze Berechnung nicht zu sehr ausufert, schlage ich vor, auch für den durchdringenden Fall die Volumenformel V = A_G * (a + b + c)/3 zu verwenden und die Seite a, wo die beiden Dreieckspitzen vertauscht sind, mit negativen Vorzeichen einzusetzen V = A_G * (b + c - a)/3. Bei dieser Volumenformel geht das Tetraeder an der Seite a links der Schnittgeraden mit negativen Vorzeichen in das Gesamtvolumen ein. Um auf das korrekte Volumen zu kommen, muss also das Doppelte des Tetraedervolumens noch hinzuaddiert werden V = A_G * (b + c - a)/3 + 2 * V_Tetraeder. Nach dieser Methode umgeht man die Berechnung des Pentaeders rechts von der Schnittgeraden, welches keine drei parallele Seitenlinien hat. Du kannst das auch vorher mal für den 2D-Fall testen, ob da die richtige Lösung herauskommt. Viele Grüße, Stefan
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.12, vom Themenstarter, eingetragen 2012-08-27 11:36
|
Hallo Stefan,
vielen Dank für deine Antwort. Ich konnte dies im 2D Fall in die selbe Lösungsformel überführen, die ich hergeleitet habe.
Jetzt müsste ich nur mehr die Schnittgerade berechnen und das Volumen des Tetraeders. Nehmen wir an ich berechne die beiden Punkte B,C welche die Schnittgerade begrenzen, weiters kenne ich die Punkte A_low und A_high welche den unteren bzw. oberen Punkt der Geraden a darstellen.
Kann ich mir daraus direkt das Volumen des Tetraeders berechnen? Oder muss ich vorher noch die Scherung berechnen, sodass ein Dreieck parallel zur Grundfläche (und normal zu a) steht?
Lg Gert
|
Profil
Quote
Link |
Knaaxx
Senior  Dabei seit: 06.05.2006 Mitteilungen: 2544
Aus:
 |     Beitrag No.13, eingetragen 2012-08-27 14:06
|
Hallo,
deine letzte Frage ist doch nur, Volumen zwischen zwei Dreiecken die sich, genau passend, gerade nicht überschneiden.
|
Profil
Quote
Link |
Grossmeister_G
Aktiv  Dabei seit: 31.10.2007 Mitteilungen: 36
Aus:
 |     Beitrag No.14, vom Themenstarter, eingetragen 2012-08-27 16:23
|
Stimmt, das ist dann genau der Fall!
Jetzt ist alles klar! Danke vielmals!
|
Profil
Quote
Link |
Grossmeister_G hat die Antworten auf ihre/seine Frage gesehen. Grossmeister_G hat selbst das Ok-Häkchen gesetzt. | | Grossmeister_G wird per Mail über neue Antworten informiert. | |
| [Neues Thema] [Druckversion] |
|