我从一个坐标系和一个沿着Z轴的点开始,由P1 = [0 0 h] 和XY中的一个点由P2 = [h * tan(A),h * tan(B),0]给出的平面然后求解垂直于从P2指向P1的矢量的平面方程,即矢量= P1-P2。平面方程我得到的是以下内容:如何将一个三维笛卡尔坐标系中的坐标转换为另一个三维笛卡尔坐标系
X * H * TAN(A)-Y * H * TAN(B)+ Z * H = 0。
现在我给定的四个点相对于该平面上,这个新平面的原点与原平面中的P2相同。
四点使一个矩形,并有:
[L*tan(C), L*tan(D), 0]
[L*tan(C), -L*tan(D), 0]
[-L*tan(C), -L*tan(D), 0]
[-L*tan(C), L*tan(D), 0]
我究竟会如何将这些点到原来的坐标系? 我知道这涉及翻译和旋转,当我看到我的问题时,我只能找到翻译和旋转的情况分开,而没有一个是两者的组合。
旋转变换的工作原理是什么?如果我已经知道它围绕X轴旋转A度并且围绕Y轴旋转B度怎么办?那么我可以在那种情况下做简单的触发来追踪这个值吗?或者是不是那么简单,我必须围绕它必须旋转的轴旋转它,以便匹配回原始坐标系?
在MATLAB中是否有一个函数可以插入说3个点定义一个坐标系,另一个3个点为第二个坐标系,然后给我变换矩阵?
请让我知道,如果我的措辞不清楚,这个三维问题是非常难以形象化我似乎无法弄清楚如何编写所有的触发器,并希望以数学方式尝试它...但如果你偶然知道一个更简单的解决方案,那么更直截了当的建议吧!
我们可以简化问题吗?也许:“给定由原点O1和3个正交单位向量X1,Y1和Z1(因此Z1 = X1 x Y1)定义的坐标系中的一个点,如何在由O2,X2给出的另一个坐标系中表示该点,Y2和Z2(其中X2,Y2和Z2也定义了右手正交归一基)?“如果您提出类似的问题,我们不必深入了解您的用例的细节,这个问题可能会帮助其他读者。这是否接近你所需要的? –
是的,我相信这就足够了。 – Niseonna