Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 如何通过用户移动控制点计算三维旋转矩阵_User Interface_Matrix_3d - Fatal编程技术网

User interface 如何通过用户移动控制点计算三维旋转矩阵

User interface 如何通过用户移动控制点计算三维旋转矩阵,user-interface,matrix,3d,User Interface,Matrix,3d,我有一个3D场景的投影视图。二维点通过将同质坐标中的三维点乘以视图矩阵(包括平移和旋转)和透视矩阵来计算。我想允许用户移动描述三个轴的控制点,并基于此更新旋转矩阵 假设围绕原点旋转,在投影二维坐标发生变化的情况下,如何计算新的旋转矩阵?求解单轴末端的位置在可能的坐标集中有很大的简并度,但求解垂直于移动轴的轴的旋转可能会起作用 至少需要2个采样点来约束三维轴,轴的一端与原点相连。显然,应该可以计算如何通过旋转将另一端从A点移动到B点,而不绕该轴旋转。

我有一个3D场景的投影视图。二维点通过将同质坐标中的三维点乘以视图矩阵(包括平移和旋转)和透视矩阵来计算。我想允许用户移动描述三个轴的控制点,并基于此更新旋转矩阵


假设围绕原点旋转,在投影二维坐标发生变化的情况下,如何计算新的旋转矩阵?求解单轴末端的位置在可能的坐标集中有很大的简并度,但求解垂直于移动轴的轴的旋转可能会起作用

至少需要2个采样点来约束三维轴,轴的一端与原点相连。显然,应该可以计算如何通过旋转将另一端从A点移动到B点,而不绕该轴旋转。