Iphone OpenGL:gluLookAt X,Z到旋转(360):标题角度

时间:2010-12-08 13:19:07

标签: iphone opengl-es glu

我正在编写的OpenGL程序使用glULookat的端口来控制相机

要旋转我有以下代码

case ActionTurnLeft: 
center[0] = eye[0] + cos(-SPEED_TURN)*v[0] - sin(-SPEED_TURN)*v[2]; 
center[2] = eye[2] + sin(-SPEED_TURN)*v[0] + cos(-SPEED_TURN)*v[2]; 


break;

案例ActionTurnRight:     center [0] = eye [0] + cos(SPEED_TURN)* v [0] - sin(SPEED_TURN)* v [2];     center [2] = eye [2] + sin(SPEED_TURN)* v [0] + cos(SPEED_TURN)* v [2];

我的问题是如何以度为单位获得旋转角度?

更新:试过这个,它给了我-572到572

float rotAngleDegs;
float PI = 3.1415926535897;
rotAngleDegs = (cos(-SPEED_TURN)*v[0] - sin(-SPEED_TURN)*v[2]) * 180 / PI;
NSLog(@"%f", rotAngleDegs);

3 个答案:

答案 0 :(得分:1)

要获得以度为单位的角度,只需将弧度的角度乘以180 / PI,其中PI = 3.1415926535897。在这种情况下,以弧度为单位的旋转角度是eye [] part之后的整段代码。

rotAngleDegs =(cos(-SPEED_TURN)* v [0] - sin(-SPEED_TURN)* v [2])* 180 / PI

答案 1 :(得分:1)

看起来你正在使用旋转矩阵。 Wikipedia Rotation Matrix entry

-SPEED_TURN是以弧度表示的旋转角度,可以通过乘以系数180 / PI将其转换为度数。

答案 2 :(得分:0)

通过旋转增加浮点数+ = 2.865;似乎实际上工作大声笑