jax.scipy.spatial.transform.Rotation#
- class jax.scipy.spatial.transform.Rotation(quat)[原始碼]#
3 維空間中的旋轉。
scipy.spatial.transform.Rotation
的 JAX 實作。範例
建構一個描述繞 z 軸旋轉 90 度的物件
>>> from jax.scipy.spatial.transform import Rotation >>> r = Rotation.from_euler('z', 90, degrees=True)
轉換為旋轉向量
>>> r.as_rotvec() Array([0. , 0. , 1.5707964], dtype=float32)
轉換為旋轉矩陣
>>> r.as_matrix() Array([[ 0. , -0.99999994, 0. ], [ 0.99999994, 0. , 0. ], [ 0. , 0. , 0.99999994]], dtype=float32)
與另一個旋轉組合
>>> r2 = Rotation.from_euler('x', 90, degrees=True) >>> r3 = r * r2 >>> r3.as_matrix() Array([[0., 0., 1.], [1., 0., 0.], [0., 1., 0.]], dtype=float32)
請參閱 scipy
Rotation
文件,以取得更多操作 Rotation 物件的範例。- 參數:
quat (jax.Array)
- __init__()#
方法
__init__
()apply
(vectors[, inverse])將此旋轉應用於一個或多個向量。
as_euler
(seq[, degrees])表示為尤拉角 (Euler angles)。
as_matrix
()表示為旋轉矩陣。
as_mrp
()表示為修正羅德里格參數 (Modified Rodrigues Parameters, MRPs)。
as_quat
([canonical, scalar_first])表示為四元數。
as_rotvec
([degrees])表示為旋轉向量。
concatenate
(rotations)串聯一系列 Rotation 物件。
count
(value, /)傳回 value 出現的次數。
from_euler
(seq, angles[, degrees])從尤拉角 (Euler angles) 初始化。
from_matrix
(matrix)從旋轉矩陣初始化。
from_mrp
(mrp)從修正羅德里格參數 (Modified Rodrigues Parameters, MRPs) 初始化。
from_quat
(quat)從四元數初始化。
from_rotvec
(rotvec[, degrees])從旋轉向量初始化。
identity
([num, dtype])取得單位旋轉。
index
(value[, start, stop])傳回 value 的第一個索引。
inv
()反轉此旋轉。
magnitude
()取得旋轉的量值。
mean
([weights])取得旋轉的平均值。
random
(random_key[, num])產生均勻分佈的旋轉。
屬性
quat
欄位編號 0 的別名
single
此實例是否代表單一旋轉。