Eine 3D-Ebene ist typischerweise definiert als a,b,c,d
. Handelt es sich bei a,b,c
den x,y,z
Koordinaten eines 3D-Vektors, mit dem d
die Rotation der Ebene definiert wird, tatsächlich um Achsenwinkel-Rotationsdaten?
Die viervariable Darstellung einer Ebene ist der Koeffizient in der Gleichheit
axe + by + cz = d
Dies kann so gesehen werden, dass N = ( a , b , c ) ein normaler Vektor und d ein Abstand vom Koordinatenursprung ist (in Einheiten der Länge von N ), und wir können diese Gleichung auch schreiben als N · P = d , wobei P = ( x , y , z ).
Diese Darstellung erlaubt es nicht , einen bestimmten „Ursprung der Ebene“ zu definieren - mathematische Ebenen haben keinen Ursprung. (Da jedoch N · P = d ist , können wir P = ( d | N | -2 ) N setzen und einen bestimmten Punkt auf der Ebene erhalten: den Punkt, der dem Ursprung des Koordinatensystems am nächsten liegt .)
Wenn Sie das = in <oder> ändern, beschreiben Sie einen "halben Raum", der für Dinge wie eine unendliche Etage in einer Physik-Engine verwendet werden kann. Der entgegengesetzte Halbraum wird erhalten, indem sowohl N als auch d negiert werden .
"Typisch" ist ein ziemlich subjektives Wort, nach meiner Erfahrung gibt es verschiedene Möglichkeiten, eine Ebene in einem 3D-Raum zu beschreiben, die aufgrund der Eigenschaften, die solche Konstruktionen aufweisen, üblicher sind.
Zu Ihrer Frage gibt es 4 reelle Werte, um eine Ebene in einem 3D-Raum zu bestimmen. Wie Sie bereits betont haben, können a, b, c die Komponenten eines Vektors sein, der senkrecht zur gewünschten Ebene steht. Wenn N = (a, b, c) unser senkrechter Vektor ist, können Sie einen Punkt in Ihrer Ebene finden, der P = d N für einige d reelle und positive ist. Hier sagen Sie, dass d der Abstand vom Ursprung im Ausdruck von N ist ; Wenn N ein Einheitsvektor ist, dann ist d der Abstand zwischen dem Ursprung und Ihrer Ebene in der Art, wie der Begriff "Abstand" gemeinhin gemeint ist.
Überraschenderweise können Sie jede mögliche orientierte Ebene definieren, da Sie negative Werte für d verwenden können . Dabei verlieren Sie die direkte Bedeutung von d als Abstand, bis Sie einen absoluten Wert ( | d | ) eingeben .
quelle
Soweit ich weiß, wird eine Ebene normalerweise durch eine Position definiert, um uns mitzuteilen, wo der Ursprung liegt, und durch eine Normalen, die von der Ebene nach oben zeigt, um uns mitzuteilen, welche Orientierung wir haben. Es ist üblich, hierfür zwei Vektoren zu verwenden.
Mit vier Variablen haben Sie nicht genug Variablen, um eine Ebene zu definieren, deren Ursprung nicht bei (0,0,0) liegt, oder nicht genug Variablen, um alle Rotationen zu berücksichtigen.
Das Minimum, das wir für eine Ebene im euklidischen 3D-Raum mit einem Ursprung benötigen, der nicht bei (0,0,0) liegt und in der wir uns ausrichten können, ist 5. Stellen Sie sich die Einheitskugel vor, wir benötigen 3 Variablen, um zu definieren, wo der Ursprung liegt der Einheitskugel ist (X, Y, Z). Dann brauchen wir zwei Variablen, um zu definieren, wo sich das 'Hoch' der Ebene befindet. Wir können dies tun, indem wir den beschriebenen Vektor verwenden, indem wir vom Ursprung der Kugel zu ihrer Oberfläche gehen, wenn ein Breitengrad und ein Längengrad gegeben sind.
Wie Sie eine Ebene mit nur vier Variablen rekonstruieren würden, weiß ich nicht. Vielleicht arbeiten Sie in einem engen Bereich (die Ebene ist immer auf (0,0,0) und die vier Variablen sind eine Quaternion?) Oder die Variablen sind keine Skalare? In welchem Kontext verwenden Sie dieses a, b, c, d?
quelle