0

我有三个非共线 3D 点,比如说pt1, pt2, pt3。我已经P使用sympy.Plane. 我怎样才能找到这个平面(P)的方向,即 RPY(欧拉角)或四元数?

4

1 回答 1

0

我从未使用过 sympy,但您应该能够找到一个函数来获取 2 个向量(您的法线向量和世界 Y 轴)之间的角度。

theta = yaxis.angle_between(P.normal_vector)

然后得到旋转轴,它是那些相同向量的归一化叉积。

axis = yaxis.cross(P.normal_vector).normal()

然后从轴和角度构造一个四元数

q = Quaternion.from_axis_angle(axis, theta)
于 2020-12-31T19:39:14.770 回答