scipy.spatial.transform.Rotation.
as_rotvec#
- Rotation.as_rotvec(self, degrees=False)#
表示成旋轉向量。
旋轉向量是一個三維向量,其方向與旋轉軸同向,且其範數(norm)表示旋轉角度 [1]。
- 參數:
- degrees布林值,選填
若此旗標為 True,則回傳的大小以度為單位,否則以弧度為單位。預設值為 False。
在 1.7.0 版本中新增。
- 回傳值:
- rotvecndarray,形狀為 (3,) 或 (N, 3)
形狀取決於初始化時使用的輸入形狀。
參考資料
範例
>>> from scipy.spatial.transform import Rotation as R >>> import numpy as np
表示單一旋轉
>>> r = R.from_euler('z', 90, degrees=True) >>> r.as_rotvec() array([0. , 0. , 1.57079633]) >>> r.as_rotvec().shape (3,)
以度表示旋轉
>>> r = R.from_euler('YX', (-90, -90), degrees=True) >>> s = r.as_rotvec(degrees=True) >>> s array([-69.2820323, -69.2820323, -69.2820323]) >>> np.linalg.norm(s) 120.00000000000001
表示具有單一旋轉的堆疊
>>> r = R.from_quat([[0, 0, 1, 1]]) >>> r.as_rotvec() array([[0. , 0. , 1.57079633]]) >>> r.as_rotvec().shape (1, 3)
在單一物件中表示多個旋轉
>>> r = R.from_quat([[0, 0, 1, 1], [1, 1, 0, 1]]) >>> r.as_rotvec() array([[0. , 0. , 1.57079633], [1.35102172, 1.35102172, 0. ]]) >>> r.as_rotvec().shape (2, 3)