繁体   English   中英

使用矩阵乘法旋转opengl中的多维数据集

[英]Using Matrix Multiplication to Rotate a cube in opengl

我有一些绘制一个多维数据集的代码。 我已经设法使用glRotatef旋转了多维数据集,但是我只需要能够使用矩阵乘法来旋转多维数据集。 我知道要使用什么矩阵,但是我不确定如何将它们应用于多维数据集的顶点。 有没有办法将向量传递给glVertex3f? 还是一种传递顶点数组的方法?

您正在使用的OpenGL函数用于即时模式渲染,并且顶点转换在OpenGL中完成。 如果要在OpenGL外部手动转换顶点,则必须实现matrix * vector乘法,或使用为您完成此操作的库。

附带说明一下,如果您只对旋转感兴趣,则可能会发现Rodrigues的旋转公式比一般的矩阵变换更易于实现。

我完全同意Drew的回答。 但是,我认为我会向您介绍一个写得很好的教程系列,该系列说明了这些概念的实际作用:

http://en.wikibooks.org/wiki/OpenGL_Programming

从前3个教程开始学习着色器基础知识,然后第4和第5个教程深入探讨三角形和立方体的旋转。 此外,示例还使用FreeGLUT,这是一个框架,可让您通过按键,鼠标移动,鼠标按下等操作轻松地与代码进行交互。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM