Open3D中的 open3d.geometry.TriangleMesh 类提供了 get_rotation_matrix_from_axis_angle 方法,该方法的作用是生成一个3D旋转矩阵。在三维空间中,旋转可以视为围绕轴相对于一个角度的旋转。该方法允许用户指定轴和旋转角度,并生成对应的旋转矩阵。
get_rotation_matrix_from_axis_angle(axis: List[float], angle: float) -> numpy.ndarray
下面的示例演示如何使用get_rotation_matrix_from_axis_angle方法生成绕y轴旋转π/2弧度的旋转矩阵:
import open3d as o3d
import numpy as np
# 定义旋转轴和旋转角度
axis = [0, 1, 0]
angle = np.pi / 2
# 生成旋转矩阵
R = o3d.geometry.TriangleMesh.get_rotation_matrix_from_axis_angle(axis, angle)
print(R)
# 输出结果:
# array([[ 6.123234e-17, 0.000000e+00, -1.000000e+00],
# [ 0.000000e+00, 1.000000e+00, 0.000000e+00],
# [ 1.000000e+00, 0.000000e+00, 6.123234e-17]])