我在不同的坐标系中有两个球体:
glMatrixMode( GL_MODELVIEW );
glLoadMatrixf( M1 );
glutWireSphere(70, 15, 15);
glLoadMatrixf( M2 );
glutWireSphere(70, 15, 15);
我想在第一个球体的坐标系中找到球体2的位置。你能帮我做一下吗?
答案 0 :(得分:1)
你所拥有的是M1
将球体1转换为眼睛空间,将M2
转换为球体2,因此您可以将眼睛空间用作公共空间,这样您就可以将两者之间的位置联系起来。因此,要将球体的对象空间中的顶点转换为球体1的对象空间,您只需使用M2
进入公共眼睛空间,然后使用{{1}的倒数返回球体1的对象空间。 }。在经典的GL表示法中,它将为您提供化合物转换作为矩阵
M1
并且球体2对象空间中的任何点T=inverse(M1)*M2
将转换为球体1对象空间中的x
x'