4
我打算使用gluProject
函数,在“渲染”后在第2窗口中获取点坐标。问题是,我得到了奇怪的结果。例如:我有一个x = 16.5的点。当我使用gluProject
时,我得到x = -6200.0。OpenGL gluProject() - 奇怪的结果
如果我了解gluProject
好的,我应该在“渲染”之后在屏幕上获得该点的像素位置 - 对吗?我怎样才能将奇怪的结果转换成屏幕上的像素坐标?
谢谢你的帮助!
代码我使用(由“sum1stolemyname”):
GLdouble modelview[16], projection[16]
GLint viewport[4];
glGetDoublev(GL_MODELVIEW_MATRIX, *modelView);
glGetDoublev(GL_PROJECTION_MATRIX, *projection);
glGetIntegerv(GL_VIEWPORT, *viewport);
double tx, ty, tz;
for(i = 0; i < VertexCount; i++)
{
gluProject(vertices[i].x, vertices[i].y, vertices[i].z,
modelview, projection, viewport,
&tx, &ty, &tz)
}
这不会编译。您正在混合*和&运算符。 – 2010-11-27 22:14:55
更正。谢谢! – MattheW 2010-11-27 22:20:54