Berechnung von zwei Vektoren senkrecht zum dritten Vektor in 3D

Was ist deram besten (am schnellsten) wie man zwei Vektoren berechnet, die senkrecht zum dritten Vektor (X) und auch senkrecht zueinander stehen?

So berechne ich gerade diese Vektoren:

// HELPER - unit vector that is NOT parallel to X
x_axis = normalize(X);
y_axis = crossProduct(x_axis, HELPER);
z_axis = crossProduct(x_axis, y_axis);

Ich weiß, dass es unendlich viele Lösungen dafür gibt, und es ist mir egal, welche meine Lösung sein wird.

Was steckt hinter dieser Frage: Ich muss eine Transformationsmatrix erstellen, in der ich weiß, in welche Richtung die X-Achse (erste Spalte in der Matrix) zeigen soll. Ich muss die Y- und Z-Achse berechnen (zweite und dritte Spalte). Wie wir wissen, müssen alle Achsen senkrecht zueinander stehen.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage