【发布时间】:2011-12-03 22:50:41
【问题描述】:
我正在尝试获取一个点的笛卡尔坐标,因为我正在使用一个简单的函数来传递窗口坐标,例如 (100,200)。我想将其转换为笛卡尔坐标,问题是窗口大小是可变的,所以我真的不知道如何实现。
编辑:
操作:
我尝试通过这样做来使用 guUnPorject
GLdouble modelMatrix[16];
glGetDoublev(GL_MODELVIEW_MATRIX,modelMatrix);
GLdouble projMatrix[16];
glGetDoublev(GL_PROJECTION_MATRIX,projMatrix);
double position[3];
gluUnProject(
x,
y,
1,
modelMatrix,
projMatrix,
viewport,
&position[0], //-> pointer to your own position (optional)
&position[1], // id
&position[2] //
);
cout<<position[0];
但是我得到的位置似乎完全随机
【问题讨论】: