Schnittpunkt von einer Geraden mit einem Würfel



  • Hallo zusammen mal wieder ich. Ich möchte prüfen, ob eine Gerade einen Würfel schneidet. Ich habe mir folgendes ausgedacht: Wenn eine Gerade einen Würfel schneidet, dann muss sie an irgendeiner Seite des Würfels, in diesen eintreten. Das heisst ich berechne ob es einen Schnittpunkt der Geraden mit einer der sechs Seiten gibt. Also für alle sechs Seiten, den Schnittpunkt mit der zugehörigen Seitenebene bestimmen, und prüfen ob dieser Punkt auf der jeweiligen Seite liegt. Habt Ihr noch eine effizientere Methode ?



  • Ist der Würfel Axis aligned? Und bist du dir klar, das es immer 2 Schnittpunkte geben muss, brauchst du beide? Das einfachste ist eine Transformation bestimmen, wie der Würfel in den einen Einheitswürfel transformiert wird und dann die Gerade so spieglen, das sei im ersten und letzten Quadranten verläuft (d.h. Betrag aller 3 Komponenten des Richtungsvektor soll positiv werden). Dann brauchst du nur noch die Schnittpunkten mit den Koordinatenebenen und schauen ob die im Einheitsquadrat sind.



  • @TGGC sagte in Schnittpunkt von einer Geraden mit einem Würfel:

    Und bist du dir klar, das es immer 2 Schnittpunkte geben muss, brauchst du beide?

    Kein Schnittpunkt, wenn die aneinander vorbei laufen
    Einen Schnittpunkt an einer Ecke (Tangente)
    Zwei Schnittpunkte, wenn die Gerade durch den Würfel geht.

    Wieviel Schnittpunkte gibt es, wenn die Gerade in einer Würfelseite liegt?



  • @DirkB
    Nach der obigen Definition schnneidet man an der Ecke aber nicht (man berührt nur?). Die Gerade tritt nicht in den Würfel ein.

    Trotzdem hätte man mehrere Punkte, weil ja 2 oder 3 Seiten die Ecke berühren müssen. Daher kann man immer 3 Seiten des Würfels ignorieren, wenn man einen beliebigen statt alle Punkte haben will. (Im schlimmsten Fall kannst du alle 6 Seiten berühren, aber 2 ist das Minimum.)



  • Danke Euch !!!


Anmelden zum Antworten