使用二面角将 N 转换为东方
您有一些要复制到点上的geo坐标,匹配@N,但将其保存为@orient,这样就不会产生歧义。
复制 sop 假定您的geo点沿 z 轴向下,因此您需要弄清楚如何将 {0,0,1} 旋转到 @N 上。
Dihedral() 正是这样做的,它为您提供了一个将一个向量旋转到另一个向量上的矩阵。
我们现在知道旋转矩阵和四元数是可以互换的,所以我们对该矩阵所做的就是将它转换为我们的方向四元数:
matrix3 m = dihedral( {0,0,1} , @N);
@orient = quaternion(m);
但是有更好的方法!继续阅读…