- Function WinToGl(posX, posY, posZ: Double;oldVertex : TVertex) : TVertex;
- var
- ModelView, Projection: TMatrix4d;
- Viewport: TVector4i;
- ObjX, ObjY, ObjZ: TGLDouble;
- begin
- result := oldVertex;
- glGetDoublev(GL_MODELVIEW_MATRIX,@ModelView);
- glGetDoublev(GL_PROJECTION_MATRIX,@Projection);
- glGetIntegerv(GL_VIEWPORT,@Viewport);
- gluUnProject(posX,Viewport[3] - posY - 1,posZ,ModelView,Projection,Viewport,@ObjX,@ObjY,@ObjZ);
- Result.X:=ObjX;
- Result.Y:=ObjY;
- Result.Z:=ObjZ;
- end;