Liegt der Punkt im Dreieck < Geraden und Ebenen < Lin. Algebra/Vektor < Oberstufe < Schule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 14:59 Fr 04.08.2006 | Autor: | jeb |
Hallo!
Ich versuche gerade, eine Kollisionserkennung zu programmieren. Dabei muss ich überprüfen, ob eine Gerade ein Dreieck ABC im Raum schneidet. Dazu habe ich mir folgenden Lösungsweg überlegt:
1.) Berechnen der Ebene durch das Dreieck
2.) Schnittpunkt P: Gerade/Ebene
3.) Ist der Schnittpunkt im Dreieck
Den Schnittpunkt zu berechnen habe ich geschafft. Nun schaffe ich es aber nicht, festzustellen, ob der Punkt auch im Dreieck ist. Alle Dreieckspunkte sowie der Schnittpunkt liegen als Vektoren vor. Ich habe im Internet folgenden Lösungsansatz gefunden:
[mm] \overrightarrow{PA}=s* \overrightarrow{AB}+k* \overrightarrow{AC}
[/mm]
s,k [mm] \in [/mm] [0,1]
Diesen Lösungsweg habe ich dann in das Programm eingebaut, doch habe ich dann einen Fehler entdeckt: Diese Formel überprüft ja ein Parallelogram und nicht ein Dreieck. Ich habe in verschiedenen IRC-Channels gefragt, doch keiner konnte mir helfen, das Problem so zu lösen damit ich weiss, ob der Punkt im Dreieck ist oder nicht.
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
Könnt ihr mir helfen?
Vielen Dank, jeb
|
|
|
|
Hallo jeb!
Mein Mathebuch sagt folgendes:
Ein Punkt liegt genau dann im Dreieick, wenn für seine Parameterwerte s und k die folgenden drei Bedingungen erfüllt sind:
(1) $0 [mm] \le [/mm] s [mm] \le [/mm] 1$
(2) $0 [mm] \le [/mm] k [mm] \le [/mm] 1$
(3) $0 [mm] \le [/mm] s + k [mm] \le [/mm] 1$
Sollten nur die ersten beiden Bedingungen zutreffen, dann liegt der Punkt im Parallelogreamm. Vermutlich ist es das, was dir noch fehlt?
Liebe Grüße
miniscout
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:42 Fr 04.08.2006 | Autor: | jeb |
Vielen Dank! Genau das war das Problem.
mfg, jeb
|
|
|
|