RotationsToMatrix

Espacio de nombres: Digi21.Math
Ensamblado: Digi21.DigiNG

Calcula la matriz de giro de 3 × 3 de los giros omega (eje X), phi (eje Y) y kappa (eje Z). Método de Angles.

public static void RotationsToMatrix(double omega, double phi, double kappa, out double[,] eulerMatrix)

Parámetros

Parámetro Descripción
omega Giro alrededor del eje X, en radianes.
phi Giro alrededor del eje Y, en radianes.
kappa Giro alrededor del eje Z, en radianes.
eulerMatrix Matriz nueva de 3 × 3 con los elementos siguientes (ω = omega, φ = phi, κ = kappa).
Columna 0 Columna 1 Columna 2
Fila 0 cos φ · cos κ cos ω · sin κ + sin ω · sin φ · cos κ sin ω · sin κ − cos ω · sin φ · cos κ
Fila 1 −cos φ · sin κ cos ω · cos κ − sin ω · sin φ · sin κ sin ω · cos κ + cos ω · sin φ · sin κ
Fila 2 sin φ −sin ω · cos φ cos ω · cos φ

El índice eulerMatrix[fila, columna] sigue la tabla. MatrixToRotations hace la operación inversa.

Ejemplo

Angles.RotationsToMatrix(0.0, 0.0, Math.PI / 2, out var matriz);
// matriz[0, 0] ≈ 0, matriz[0, 1] = 1, matriz[1, 0] = -1
Console.WriteLine($"{matriz[0, 0]} {matriz[0, 1]} {matriz[1, 0]}");