OpenGL使旋转函数给出向量

Posted

技术标签:

【中文标题】OpenGL使旋转函数给出向量【英文标题】:OpenGL make rotation function give vector 【发布时间】:2016-12-06 06:04:23 【问题描述】:

有没有办法记录glrotatef() 旋转,以便我可以从中获得方向向量?例如,我在 Y 轴上画了一条线。然后我使用glrotatef() 旋转以使新行变为浅蓝色。旋转功能(据我所知)移动“屏幕”,使一切都旋转。如何获取新的浅蓝色线路的信息?

【问题讨论】:

【参考方案1】:

使用 glGet,您可以获得当前的 Modelview 矩阵(用于存储您的所有转换,包括您刚刚进行的旋转)。

GLfloat matrix[16]; 
glGetFloatv (GL_MODELVIEW_MATRIX, matrix); 

然后由您将向量与该矩阵相乘以获得转换后的结果向量。看这里参考:http://mathinsight.org/matrix_vector_multiplication

【讨论】:

以上是关于OpenGL使旋转函数给出向量的主要内容,如果未能解决你的问题,请参考以下文章

Java OpenGL - 如何使对象随相机旋转?

使用OpenGL如何实现物体绕体外任意轴旋转?

OpenGL 的旋转和光照问题

OpenGL中旋转平移缩放等变换的顺序对模型的影响

围绕对象旋转的矩阵乘法opengl

在 Opengl 中使用 glm 旋转