unproject.cpp 526 B

1234567891011121314151617181920212223
  1. #include "unproject.h"
  2. #ifndef IGL_NO_OPENGL
  3. #include "OpenGL_convenience.h"
  4. IGL_INLINE int igl::unproject(
  5. const double winX,
  6. const double winY,
  7. const double winZ,
  8. double* objX,
  9. double* objY,
  10. double* objZ)
  11. {
  12. // Put model, projection, and viewport matrices into double arrays
  13. double MV[16];
  14. double P[16];
  15. int VP[4];
  16. glGetDoublev(GL_MODELVIEW_MATRIX, MV);
  17. glGetDoublev(GL_PROJECTION_MATRIX, P);
  18. glGetIntegerv(GL_VIEWPORT, VP);
  19. return gluUnProject(winX,winY,winZ,MV,P,VP,objX,objY,objZ);
  20. }
  21. #endif