jax.scipy.spatial.transform.Rotation#
- class jax.scipy.spatial.transform.Rotation(quat)[源代码][源代码]#
三维旋转。
JAX 实现的
scipy.spatial.transform.Rotation
。示例
构建一个描述绕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])表示为欧拉角。
as_matrix
()表示为旋转矩阵。
as_mrp
()表示为修正罗德里格斯参数(MRPs)。
as_quat
([canonical])表示为四元数。
as_rotvec
([degrees])表示为旋转向量。
concatenate
(rotations)连接一系列 Rotation 对象。
count
(value, /)返回值出现的次数。
from_euler
(seq, angles[, degrees])从欧拉角初始化。
from_matrix
(matrix)从旋转矩阵初始化。
from_mrp
(mrp)从修正罗德里格斯参数 (MRPs) 初始化。
from_quat
(quat)从四元数初始化。
from_rotvec
(rotvec[, degrees])从旋转向量初始化。
identity
([num, dtype])获取身份旋转(s)。
index
(value[, start, stop])返回值的第一个索引。
inv
()反转此旋转。
magnitude
()获取旋转的大小。
mean
([weights])获取旋转的平均值。
random
(random_key[, num])生成均匀分布的旋转。
属性
quat
字段编号 0 的别名
single
此实例是否表示单次旋转。