| 
    Oolite 1.91.0.7712-251017-85ce217
    
   | 
 
#include <OOOpenGLMatrixManager.h>
Instance Methods | |
| (id) | - init | 
| (void) | - dealloc | 
| (void) | - loadModelView: | 
| (void) | - resetModelView | 
| (void) | - multModelView: | 
| (void) | - translateModelView: | 
| (void) | - rotateModelView:axis: | 
| (void) | - scaleModelView: | 
| (void) | - lookAtWithEye:center:up: | 
| (void) | - pushModelView | 
| (OOMatrix) | - popModelView | 
| (OOMatrix) | - getModelView | 
| (NSUInteger) | - countModelView | 
| (void) | - syncModelView | 
| (void) | - loadProjection: | 
| (void) | - multProjection: | 
| (void) | - translateProjection: | 
| (void) | - rotateProjection:axis: | 
| (void) | - scaleProjection: | 
| (void) | - frustumLeft:right:bottom:top:near:far: | 
| (void) | - orthoLeft:right:bottom:top:near:far: | 
| (void) | - perspectiveFovy:aspect:zNear:zFar: | 
| (void) | - resetProjection | 
| (void) | - pushProjection | 
| (OOMatrix) | - popProjection | 
| (OOMatrix) | - getProjection | 
| (void) | - syncProjection | 
| (OOMatrix) | - getMatrix: | 
| (NSArray *) | - standardMatrixUniformLocations: | 
| (void) | - updateModelView [implementation] | 
| (void) | - updateProjection [implementation] | 
Private Attributes | |
| OOMatrix | matrices [OOLITE_GL_MATRIX_END] | 
| BOOL | valid [OOLITE_GL_MATRIX_END] | 
| OOOpenGLMatrixStack * | modelViewStack | 
| OOOpenGLMatrixStack * | projectionStack | 
Definition at line 63 of file OOOpenGLMatrixManager.h.
| - (NSUInteger) countModelView | 
Definition at line 236 of file OOOpenGLMatrixManager.m.
References countModelView, and OOOpenGLMatrixStack::stackCount.
Referenced by countModelView.
| - (void) dealloc | 
Definition at line 157 of file OOOpenGLMatrixManager.m.
References dealloc.
Referenced by dealloc.
| - (void) frustumLeft: | (double) | l | |
| right: | (double) | r | |
| bottom: | (double) | b | |
| top: | (double) | t | |
| near: | (double) | n | |
| far: | (double) | f | 
Definition at line 281 of file OOOpenGLMatrixManager.m.
References multProjection:.
Referenced by OOGLFrustum().
| - (OOMatrix) getMatrix: | (int) | which | 
Definition at line 349 of file OOOpenGLMatrixManager.m.
References kIdentityMatrix, matrices, OOLITE_GL_MATRIX_END, OOLITE_GL_MATRIX_MODELVIEW, OOLITE_GL_MATRIX_MODELVIEW_INVERSE, OOLITE_GL_MATRIX_MODELVIEW_INVERSE_TRANSPOSE, OOLITE_GL_MATRIX_MODELVIEW_PROJECTION, OOLITE_GL_MATRIX_MODELVIEW_PROJECTION_INVERSE, OOLITE_GL_MATRIX_MODELVIEW_PROJECTION_INVERSE_TRANSPOSE, OOLITE_GL_MATRIX_MODELVIEW_PROJECTION_TRANSPOSE, OOLITE_GL_MATRIX_MODELVIEW_TRANSPOSE, OOLITE_GL_MATRIX_NORMAL, OOLITE_GL_MATRIX_PROJECTION, OOLITE_GL_MATRIX_PROJECTION_INVERSE, OOLITE_GL_MATRIX_PROJECTION_INVERSE_TRANSPOSE, OOLITE_GL_MATRIX_PROJECTION_TRANSPOSE, OOMatrixInverse(), OOMatrixInverseWithDeterminant(), OOMatrixMultiply(), and valid.
Referenced by OOGLGetModelViewProjection().
| - (OOMatrix) getModelView | 
Definition at line 231 of file OOOpenGLMatrixManager.m.
References getModelView, and matrices.
Referenced by getModelView, OOGLGetModelView(), and syncModelView.
| - (OOMatrix) getProjection | 
Definition at line 336 of file OOOpenGLMatrixManager.m.
References getProjection, and matrices.
Referenced by getProjection, OOGLGetProjection(), and syncProjection.
| - (id) init | 
Definition at line 131 of file OOOpenGLMatrixManager.m.
References init, kIdentityMatrix, matrices, modelViewStack, OOLITE_GL_MATRIX_END, OOLITE_GL_MATRIX_MODELVIEW, OOLITE_GL_MATRIX_PROJECTION, projectionStack, and valid.
Referenced by init.
| - (void) loadModelView: | (OOMatrix) | matrix | 
Definition at line 164 of file OOOpenGLMatrixManager.m.
References matrices, and updateModelView.
Referenced by OOGLLoadModelView().
| - (void) loadProjection: | (OOMatrix) | matrix | 
Definition at line 249 of file OOOpenGLMatrixManager.m.
References matrices, and updateProjection.
Referenced by OOGLLoadProjection().
| - (void) lookAtWithEye: | (Vector) | eye | |
| center: | (Vector) | center | |
| up: | (Vector) | up | 
Definition at line 202 of file OOOpenGLMatrixManager.m.
References multModelView:.
Referenced by OOGLLookAt().
| - (void) multModelView: | (OOMatrix) | matrix | 
Definition at line 177 of file OOOpenGLMatrixManager.m.
References matrices, OOLITE_GL_MATRIX_MODELVIEW, OOMatrixMultiply(), and updateModelView.
Referenced by lookAtWithEye:center:up:, OOGLMultModelView(), rotateModelView:axis:, scaleModelView:, and translateModelView:.
| - (void) multProjection: | (OOMatrix) | matrix | 
Definition at line 256 of file OOOpenGLMatrixManager.m.
References matrices, OOLITE_GL_MATRIX_PROJECTION, OOMatrixMultiply(), and updateProjection.
Referenced by frustumLeft:right:bottom:top:near:far:, OOGLMultProjection(), orthoLeft:right:bottom:top:near:far:, perspectiveFovy:aspect:zNear:zFar:, rotateProjection:axis:, scaleProjection:, and translateProjection:.
| - (void) orthoLeft: | (double) | l | |
| right: | (double) | r | |
| bottom: | (double) | b | |
| top: | (double) | t | |
| near: | (double) | n | |
| far: | (double) | f | 
Definition at line 293 of file OOOpenGLMatrixManager.m.
References multProjection:.
Referenced by MyOpenGLView::initSplashScreen, and OOGLOrtho().
| - (void) perspectiveFovy: | (double) | fovy | |
| aspect: | (double) | aspect | |
| zNear: | (double) | zNear | |
| zFar: | (double) | zFar | 
Definition at line 305 of file OOOpenGLMatrixManager.m.
References M_PI, and multProjection:.
Referenced by OOGLPerspective().
| - (OOMatrix) popModelView | 
Definition at line 224 of file OOOpenGLMatrixManager.m.
References matrices, OOOpenGLMatrixStack::pop, popModelView, and updateModelView.
Referenced by OOGLPopModelView(), and popModelView.
| - (OOMatrix) popProjection | 
Definition at line 329 of file OOOpenGLMatrixManager.m.
References matrices, OOOpenGLMatrixStack::pop, popProjection, and updateProjection.
Referenced by OOGLPopProjection(), and popProjection.
| - (void) pushModelView | 
Definition at line 219 of file OOOpenGLMatrixManager.m.
References OOOpenGLMatrixStack::push:, and pushModelView.
Referenced by OOGLPushModelView(), and pushModelView.
| - (void) pushProjection | 
Definition at line 324 of file OOOpenGLMatrixManager.m.
References OOOpenGLMatrixStack::push:, and pushProjection.
Referenced by OOGLPushProjection(), and pushProjection.
| - (void) resetModelView | 
Definition at line 171 of file OOOpenGLMatrixManager.m.
References kIdentityMatrix, matrices, resetModelView, and updateModelView.
Referenced by MyOpenGLView::initSplashScreen, OOGLResetModelView(), and resetModelView.
| - (void) resetProjection | 
Definition at line 318 of file OOOpenGLMatrixManager.m.
References kIdentityMatrix, matrices, resetProjection, and updateProjection.
Referenced by MyOpenGLView::initSplashScreen, OOGLResetProjection(), and resetProjection.
| - (void) rotateModelView: | (GLfloat) | angle | |
| axis: | (Vector) | axis | 
Definition at line 192 of file OOOpenGLMatrixManager.m.
References multModelView:.
Referenced by OOGLRotateModelView().
| - (void) rotateProjection: | (GLfloat) | angle | |
| axis: | (Vector) | axis | 
Definition at line 271 of file OOOpenGLMatrixManager.m.
References multProjection:.
Referenced by OOGLRotateProjection().
| - (void) scaleModelView: | (Vector) | scale | 
Definition at line 197 of file OOOpenGLMatrixManager.m.
References multModelView:.
Referenced by OOGLScaleModelView().
| - (void) scaleProjection: | (Vector) | scale | 
Definition at line 276 of file OOOpenGLMatrixManager.m.
References multProjection:.
Referenced by OOGLScaleProjection().
| - (NSArray *) standardMatrixUniformLocations: | (GLhandleARB) | program | 
Definition at line 413 of file OOOpenGLMatrixManager.m.
References OO_ENTER_OPENGL, OOLITE_GL_MATRIX_END, OOLITE_GL_MATRIX_NORMAL, and ooliteStandardMatrixUniforms.
| - (void) syncModelView | 
Definition at line 241 of file OOOpenGLMatrixManager.m.
References getModelView, OO_ENTER_OPENGL, OOGL, and syncModelView.
Referenced by MyOpenGLView::initSplashScreen, OOGLLoadModelView(), OOGLLookAt(), OOGLMultModelView(), OOGLPopModelView(), OOGLPushModelView(), OOGLResetModelView(), OOGLRotateModelView(), OOGLScaleModelView(), OOGLTranslateModelView(), and syncModelView.
| - (void) syncProjection | 
Definition at line 341 of file OOOpenGLMatrixManager.m.
References getProjection, OO_ENTER_OPENGL, OOGL, and syncProjection.
Referenced by MyOpenGLView::initSplashScreen, OOGLFrustum(), OOGLLoadProjection(), OOGLMultProjection(), OOGLOrtho(), OOGLPerspective(), OOGLPopProjection(), OOGLPushProjection(), OOGLResetProjection(), OOGLRotateProjection(), OOGLScaleProjection(), OOGLTranslateProjection(), and syncProjection.
| - (void) translateModelView: | (Vector) | vector | 
Definition at line 183 of file OOOpenGLMatrixManager.m.
References kIdentityMatrix, and multModelView:.
Referenced by OOGLTranslateModelView().
| - (void) translateProjection: | (Vector) | vector | 
Definition at line 262 of file OOOpenGLMatrixManager.m.
References kIdentityMatrix, and multProjection:.
Referenced by OOGLTranslateProjection().
      
  | 
  implementation | 
Provided by category OOOpenGLMatrixManager(Private).
Definition at line 101 of file OOOpenGLMatrixManager.m.
Referenced by loadModelView:, multModelView:, popModelView, and resetModelView.
      
  | 
  implementation | 
Provided by category OOOpenGLMatrixManager(Private).
Definition at line 116 of file OOOpenGLMatrixManager.m.
Referenced by loadProjection:, multProjection:, popProjection, and resetProjection.
      
  | 
  private | 
Definition at line 66 of file OOOpenGLMatrixManager.h.
Referenced by getMatrix:, getModelView, getProjection, init, loadModelView:, loadProjection:, multModelView:, multProjection:, popModelView, popProjection, resetModelView, and resetProjection.
      
  | 
  private | 
Definition at line 68 of file OOOpenGLMatrixManager.h.
Referenced by init.
      
  | 
  private | 
Definition at line 69 of file OOOpenGLMatrixManager.h.
Referenced by init.
      
  | 
  private | 
Definition at line 67 of file OOOpenGLMatrixManager.h.
Referenced by getMatrix:, and init.