Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有三个非共线 3D 点,比如说pt1, pt2, pt3。我已经P使用sympy.Plane. 我怎样才能找到这个平面(P)的方向,即 RPY(欧拉角)或四元数?
pt1
pt2
pt3
P
sympy.Plane
我从未使用过 sympy,但您应该能够找到一个函数来获取 2 个向量(您的法线向量和世界 Y 轴)之间的角度。
theta = yaxis.angle_between(P.normal_vector)
然后得到旋转轴,它是那些相同向量的归一化叉积。
axis = yaxis.cross(P.normal_vector).normal()
然后从轴和角度构造一个四元数
q = Quaternion.from_axis_angle(axis, theta)