[问题] 找opengl旋转的函式库

楼主: noodleT (面T)   2014-09-27 13:37:15
glRotatef(theta, kx, ky, kz); //对 k 轴旋转 theta
glCallList(MYLIST)
...
OPENGL中对某轴旋转是使用上面的函式
但若我想
把 MYLIST 的 X 轴画在大地座标的 (1,1,0) 方向
把 MYLIST 的 Y 轴画在大地座标的 (-1,1,0) 方向
把 MYLIST 的 Z 轴画在大地座标的 (1,1,0)cross(-1,1,0) 方向
那有什么相关的函式可以使用呢?
还是只能先依上述条件求出 kx,ky,kz,theta ?
(k = k 相对于大地座标)
谢谢
作者: a27417332 (等号卡比)   2014-09-27 15:14:00
你需要做的是先学好数学
楼主: noodleT (面T)   2014-09-27 15:20:00
怎说呢? MYLIST的XYZ的确可画在大地座标的那个方向上吧只是求k,theta再来旋转太不经济了,所以来请教有没有哪些我没学过的函式可用 @@
作者: Bencrie   2014-09-27 15:31:00
OpenGL 新版甚至没有 glRotatef 那些内建的矩阵运算矩阵堆叠也拿掉了。一楼的建议其实是很中肯的啊
作者: Killercat (杀人猫™)   2014-09-27 15:59:00
GLUT应该还能用吧好久没写那么native的东西了 不过GLUT应该是有旋转缩放的一些helper 可以先翻看看里面有没有你能用的另外 学数学再写44matrix实在太不经济啦... :P
作者: a27417332 (等号卡比)   2014-09-27 18:57:00
Modern OpenGL就只能这么不经济(汗)传统OpenGL的矩阵变换原理我不清楚,所以我也帮不上忙我没理解错误的话,感觉原PO要的是对着Z轴转向?
作者: Bencrie   2014-09-28 01:29:00
那个 VCL 元件只是帮你搞初始化的部份就是帮你处理 DC 生 RC 这块,其他没什么差
楼主: noodleT (面T)   2014-09-28 01:32:00
意思是我可以用那个元件+新版的标头档 来做绘图功能?
作者: Bencrie   2014-09-28 01:40:00
可以,因为你还是得自己 LoadLibrary 然后拿 funcptr不过你的 code 没用到 extension 啊?

Links booklink

Contact Us: admin [ a t ] ucptt.com