作业帮 > 数学 > 作业

已知三维坐标系原点O,向量OA OB,A(X1,Y1,Z1)B(X2,Y2,Z2) 其中OB 为 OA旋转所得,求有OA

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/15 10:05:11
已知三维坐标系原点O,向量OA OB,A(X1,Y1,Z1)B(X2,Y2,Z2) 其中OB 为 OA旋转所得,求有OA变换到OB
已知三维坐标系原点O,向量OA OB,A(X1,Y1,Z1)B(X2,Y2,Z2)
其中OB 为 OA旋转所得,求由OA变换到OB的旋转矩阵.
回答要仔细.算法、公式都有最好.
这是自己想的题目啊?真没遇见这个题目.但这绝对是好题,不知道有没有答案.
如果直接设矩阵的9个未知数,列出7条等式方程,好像很难求出那9个数.
另一个思路是用坐标的定义.
设x坐标轴的单位向量e1,先在x-O-y平面逆时针转角a,接着在z-O-x平面逆时针转角b.
那么e'1 = cosa cosb*e1 +cos(90-a)cosb *e2 + cos(90-b)
再用空间思维和三垂线定理求e'2、e'3
其实e'1、e'2、e'3可以换成X2,Y2,Z2
e1、e2、e3可以换成X1,Y1,Z1
这三条等式只有两个未知数.虽然都是三角函数,应该还可以求解吧.
再问: opengl 编程,需要用到。
再答: 设向量OA与X轴夹角为a1(逆时针为正),与x-O-y平面夹角为b1 设向量OB与X轴夹角为a2(逆时针为正),与x-O-y平面夹角为b2 设向量OA转到向量OB,需要转的角为:x-O-y转角a,x-O-z角b,那么a=a1-a2,b=b1-b2 由分析可知, e'1 = cosa cosb*e1 +sina cosb *e2 + sinb*e3 e'2 = -cosb sina*e1 +cosb cosa*e2 + -sinb*e3 e'3 = -sinb*e1 + 0 *e2 + cosb*e3 分析角a1,a2,b1,b2