我发现OpenGL里面的
void glRotated(
GLdouble angle,
GLdouble x,
GLdouble y,
GLdouble z
);void glRotatef(
GLfloat angle,
GLfloat x,
GLfloat y,
GLfloat z
);这两个函数的旋转功能太强大了,它能够使得模型视图矩阵绕着任意的轴旋转,这里的轴不光是X轴,Y轴与Z轴,还可以是其他的轴....
我看过一下Direct3D里面有这么三个函数
D3DXMATRIX *D3DXMatrixRotationX(D3DXMATRIX *pOut,FLOAT Angle);
D3DXMATRIX *D3DXMatrixRotationY(D3DXMATRIX *pOut,FLOAT Angle);
D3DXMATRIX *D3DXMatrixRotationZ(D3DXMATRIX *pOut,FLOAT Angle);这三个函数合起来也只能使矩阵绕X,Y,Z轴旋转呀,如果想绕其他的轴旋转的话,这三个函数就无能为力了,OpenGL太强大了,一个函数的功能要顶上三个Direct3D的函数还不止!
我想知道这两个函数产生的是什么样的矩阵,能绕任意的轴旋转。有哪位高手能告诉我吗?谢谢了
void glRotated(
GLdouble angle,
GLdouble x,
GLdouble y,
GLdouble z
);void glRotatef(
GLfloat angle,
GLfloat x,
GLfloat y,
GLfloat z
);这两个函数的旋转功能太强大了,它能够使得模型视图矩阵绕着任意的轴旋转,这里的轴不光是X轴,Y轴与Z轴,还可以是其他的轴....
我看过一下Direct3D里面有这么三个函数
D3DXMATRIX *D3DXMatrixRotationX(D3DXMATRIX *pOut,FLOAT Angle);
D3DXMATRIX *D3DXMatrixRotationY(D3DXMATRIX *pOut,FLOAT Angle);
D3DXMATRIX *D3DXMatrixRotationZ(D3DXMATRIX *pOut,FLOAT Angle);这三个函数合起来也只能使矩阵绕X,Y,Z轴旋转呀,如果想绕其他的轴旋转的话,这三个函数就无能为力了,OpenGL太强大了,一个函数的功能要顶上三个Direct3D的函数还不止!
我想知道这两个函数产生的是什么样的矩阵,能绕任意的轴旋转。有哪位高手能告诉我吗?谢谢了
解决方案 »
- 急!求助:如何给工具栏按钮添加响应事件
- 客户端完成端口,GetQueuedCompletionStatus检测不到状态
- 一个关于ObjectARX与CAD版本兼容的问题.
- 写一个ActiveX控件的时候遇到的很郁闷的问题,全世界仅此一处
- 求 VC对Excel编程, 在Excel中完成两个简单功能(好象要用Shape)
- 寻VC比较厉害的人物,交个朋友,互相切磋。
- GetFieldValue(参1,参2)中,参1应该写什么
- 关于类型转换的问题
- 有哪位高手知道如何处理ttf,ttc格式的字库文件?
- 关于VC++播放Flash动画的问题
- 请问下如何学习H.264,谢谢
- 关于win32下如何获取socket connect连接时间
GLdouble angle,
GLdouble x,
GLdouble y,
GLdouble z
);glRotated(angle,0,0,1);//绕z轴逆时针转angle,angle为非负数
glRotated(angle.0,1,0);//绕y轴
glRotated(angle.1,0,0);//绕x轴这样用的,