CSCI441 OpenGL Library 5.9.0
CS@Mines CSCI441 Computer Graphics Course Library
|
Abstract Class to represent an orthographic camera. Stores box clip planes. More...
#include <OrthographicCamera.hpp>
Public Member Functions | |
OrthographicCamera (GLfloat minX=-1.0f, GLfloat maxX=1.0f, GLfloat minY=-1.0f, GLfloat maxY=1.0f, GLfloat minZ=-1.0f, GLfloat maxZ=1.0f) | |
initializes the OrthographicCamera | |
Public Member Functions inherited from CSCI441::Camera | |
virtual | ~Camera ()=default |
properly destroy concrete children | |
virtual void | recomputeOrientation ()=0 |
Uses theta, phi, & radius to update the camera's view matrix parameters. The camera orientation is controlled via spherical coordinates and this method would orient and/or position the camera in cartesian coordinates. | |
virtual void | moveForward (GLfloat movementFactor)=0 |
steps forward along the camera's view | |
virtual void | moveBackward (GLfloat movementFactor)=0 |
steps backward along the camera's view | |
virtual void | rotate (GLfloat dTheta, GLfloat dPhi) |
rotates the camera's POV by adding to theta & phi then ensuring phi stays within the (0, pi) range and finally calls through to recomputeOrientation() to update the view parameters after the rotation | |
virtual void | computeViewMatrix () final |
creates the View Matrix based on the position, lookAt point, and up vector | |
virtual glm::mat4 | getProjectionMatrix () const final |
returns the current projection matrix for the associated camera | |
virtual glm::mat4 | getViewMatrix () const final |
returns the current view matrix for the associated camera | |
virtual glm::vec3 | getPosition () const final |
returns the current camera position in world space | |
virtual glm::vec3 | getLookAtPoint () const final |
returns the current lookAt point in world space | |
virtual glm::vec3 | getUpVector () const final |
returns the current up vector in world space | |
virtual GLfloat | getTheta () const final |
returns the current theta value in radians | |
virtual GLfloat | getPhi () const final |
returns the current phi value in radians | |
GLfloat | getRadius () const |
returns the current radius in world space | |
virtual void | setPosition (const glm::vec3 pos) final |
sets the camera's position in world space | |
virtual void | setLookAtPoint (const glm::vec3 lookAt) final |
sets the camera's lookAt point in world space | |
virtual void | setUpVector (const glm::vec3 up) final |
sets the camera's up vector in world space | |
virtual void | setTheta (const GLfloat t) final |
sets the camera's theta angle in radians | |
virtual void | setPhi (const GLfloat p) final |
sets the camera's phi angle in radians | |
virtual void | setRadius (const GLfloat r) final |
sets the camera's radius in world space | |
Additional Inherited Members | |
Protected Member Functions inherited from CSCI441::Camera | |
Camera () | |
create a default camera at the origin, looking down the negative Z axis oriented with the world coordinate system | |
Protected Attributes inherited from CSCI441::Camera | |
glm::mat4 | mProjectionMatrix |
stores the Projection Matrix | |
glm::mat4 | mViewMatrix |
stores the View Matrix corresponding to the inverse of the Camera's Matrix | |
glm::vec3 | mCameraPosition |
the cartesian position in world space of the camera | |
glm::vec3 | mCameraDirection |
the cartesian direction the camera is facing in world space | |
glm::vec3 | mCameraLookAtPoint |
the world space point in front of the camera | |
glm::vec3 | mCameraUpVector |
the up vector of the camera specified in world space | |
GLfloat | mCameraTheta |
spherical angle for yaw direction in radians | |
GLfloat | mCameraPhi |
spherical angle for pitch direction in radians | |
GLfloat | mCameraRadius |
spherical magnitude for direction in world space | |
Abstract Class to represent an orthographic camera. Stores box clip planes.
|
inlineexplicit |
initializes the OrthographicCamera
minX | left clipping plane (defaults to -1.0f) |
maxX | right clipping plane (defaults to +1.0f) |
minY | bottom clipping plane (defaults to -1.0f) |
maxY | top clipping plane (defaults to +1.0f) |
minZ | near clipping plane (defaults to -1.0f) |
maxZ | far clipping plane (defaults to +1.0f) |