Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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
用openGL计算两个图形之间的夹角_Opengl_Angle - Fatal编程技术网

用openGL计算两个图形之间的夹角

用openGL计算两个图形之间的夹角,opengl,angle,Opengl,Angle,这就是最终的结果。问题是,我如何计算旋转这些棱镜的角度(我有一个绘制单棱镜的函数-棱镜和梯形的高度已知)?你想将一个完整的旋转细分为6个部分。所以你的角度是360/6=60度。你有6个棱镜来完成一个360度的循环,所以从它的对称性来看,你应该将每个棱镜旋转60度(即pi/3)在这个例子中,你有6个棱镜,所以你可以将棱镜旋转60度,但情况并非始终相同。所以试着用数学公式来计算角度。 让我们举个例子。 你有一条线(x1,y1,z1)到(x2,y2,z2)如果你想绕z轴旋转它,那么像这样计算角度 in


这就是最终的结果。问题是,我如何计算旋转这些棱镜的角度(我有一个绘制单棱镜的函数-棱镜和梯形的高度已知)?

你想将一个完整的旋转细分为6个部分。所以你的角度是360/6=60度。

你有6个棱镜来完成一个360度的循环,所以从它的对称性来看,你应该将每个棱镜旋转60度(即pi/3)

在这个例子中,你有6个棱镜,所以你可以将棱镜旋转60度,但情况并非始终相同。所以试着用数学公式来计算角度。 让我们举个例子。 你有一条
线(x1,y1,z1)到(x2,y2,z2)
如果你想绕z轴旋转它,那么像这样计算角度

inverse of tan (p/b) where p = y2-y1 and b = x2 -x1
它给出了绕z轴旋转的角度

现在,绕y轴旋转:

p=z2-z1 and b=x2-x1
同样,绕x轴旋转:

p=y2-y1 and b=z2-z1