Liegt ein Punkt von einem Viereck auf/in einem rechtwinkligen Dreieck?
-
Guten Tag,
Ich habe ein zufälliges rechtwinkliges Dreieck (d.h. ich weiß nur das dass Dreieck rechtwinklig ist) und ein Viereck das irgendwo sein kann.
Wie kann ich herausfinden, ob ein Teil des Vierecks in dem Dreieck ist?
Ich habe folgende Informationen
über das Dreieck:
- Die Koordinaten der Punkte A, B und C des Dreiecks
- Die längen der ankathetenüber das Viereck:
- Die Koordinaten der Punkte A, B, C und D des Vierecks
- Die längen der Seiten des Viereckesdanke im voraus,
MaxMustermann
-
Also das erste das mir einfällt: Prüfe ob einer der Punkte des Vierecks in dem Dreieck ist. Das heißt, du stellst die Viereckpunkte zum Beispiel wie folgt dar:
A,B,C Dreieckpunkte (Großbuchstaben = Vektoren) K einer der Viereckpunkte (K-C) = x * (A -C) + y * (B - C)
Das ist eindeutig nach x, y lösbar.
Gilt (x + y) < 1, so liegt der Punkt K im Dreieck.
Zeichne es dir aber lieber nochmal hin, ich bin jetzt nicht sicher ob ich im Kopf alles richtig gerechnet habe. Die Idee an sich sollte jedoch zum Ziel führen.
-
Das führt leider nicht zum Ziel. Denn du prüfst z. B. nicht, ob das Dreieck eine Seite des Vierecks schneidet.
-
Meines erachtens gibt es 3 Fälle:
- Dreieck ist im Viereck:
Teste ob mind. einer der 3 Punkte vom Dreieck im Viereck ist - Viereck ist im Dreieck:
Teste ob mind. einer der 4 Punkte vom Viereck im Dreieck ist - sonst:
prüfe ob es einen echten Schnitt der Kanten vom Dreieck mit denen vom Viereck gibt.
wenn irgendein Test positiv ausfällt ist der Schnitt der beiden Objekte nicht leer.
- Dreieck ist im Viereck: