Im folgenden Beispiel schneidet die Ebene offensichtlich die Box, aber die Funktion intersectsPlane gibt false zurück.
Beispiel
Ich finde, dass das Hinzufügen von zwei negativen Vorzeichen vor beiden der plane.constant den Fehler beheben kann.
https://github.com/mrdoob/three.js/blob/c570b9bd95cf94829715b2cd3a8b128e37768a9c/src/math/Box3.js#L387
Außerdem denke ich, dass die Definition der Konstanten der Ebene nicht eindeutig ist, was den Fehler verursacht.
Guter Fund! Möchten Sie eine PR mit dem Fix machen? Es wäre toll, wenn du auch den falschen Unit-Test einstellst.
Außerdem denke ich, dass die Definition der Konstanten der Ebene nicht eindeutig ist, was den Fehler verursacht
three.js
verwendet die hessische Normalform , eine gängige Methode zur Angabe von Ebenen. Ich denke, es ist okay, dabei zu bleiben.
@ Mugen87 Dann
Auch der Test war falsch. Behoben in #14836
Hilfreichster Kommentar
Auch der Test war falsch. Behoben in #14836