get_rotation_matrix_from_yxz
是 Open3D 中 open3d.geometry.HalfEdgeTriangleMesh
类的一种方法,用于获取基于给定 YXZ 欧拉角的旋转矩阵。YXZ 欧拉角的定义是依次绕 Y、X、Z 轴旋转。
get_rotation_matrix_from_yxz(yaw: float, pitch: float, roll: float) -> numpy.ndarray
yaw
:float类型,表示绕 Y轴 旋转的角度,弧度制。pitch
:float类型,表示绕 X轴 旋转的角度,弧度制。roll
:float类型,表示绕 Z轴 旋转的角度,弧度制。返回一个 numpy.ndarray
类型的旋转矩阵,大小为 (3,3)
。
import open3d as o3d
import numpy as np
mesh = o3d.geometry.TriangleMesh.create_box()
mesh.compute_vertex_normals()
mesh.paint_uniform_color([0.5, 0.5, 0.5])
mesh.translate([1.5, 0.0, 0.0])
rot_mat = o3d.geometry.HalfEdgeTriangleMesh.get_rotation_matrix_from_yxz(np.pi/4, np.pi/4, np.pi/4)
mesh.rotate(rot_mat)
o3d.visualization.draw_geometries([mesh])
此示例代码创建了一个立方体的三角形网格,并对其进行了YXZ欧拉角旋转,最后可视化展示。
(3,3)
。open3d.visualization.O3DVisualizer
中的内部方法 compute_rotation_from_yaw_pitch_roll()
的封装。