136 return rotateRad(glm::radians(angleDeg), axis);
virtual const glm::mat4 & getViewTransform(RenderState *renderState)
virtual Camera * scale(glm::vec3 scaling)
Base class for all cameras (composite node, abstract).
virtual Camera * translate(glm::vec3 translation)
Local header file for GLM OpenGL Mathematics library.
Camera * rotateElevationRad(GLfloat angleRad)
Camera * setOrientation(const glm::quat &orientation)
Camera * rotateAzimuthRad(GLfloat angleRad)
Camera * rotatePitchRad(GLfloat angleRad)
Camera * setPosition(const glm::vec3 &position)
GLfloat getCenterDist() const
Camera * rotatePitch(GLfloat angleDeg)
virtual const glm::mat4 & getProjection()
const glm::vec3 & getViewDirection() const
bool isDrawCenter() const
virtual Camera * rotate(GLfloat angleDeg, glm::vec3 axis)
Camera * rotateRoll(GLfloat angleDeg)
Base class for all traversers (visitor pattern, abstract).
Local header file for GLEW library.
Camera * dolly(GLfloat distance)
Camera * rotateAzimuth(GLfloat angleDeg)
const glm::quat & getOrientation() const
Camera * rotateRollRad(GLfloat angleRad)
Camera * rotateElevation(GLfloat angleDeg)
Camera * setDrawCenter(bool isDrawCenter)
Camera * rotateYaw(GLfloat angleDeg)
virtual void updateProjection()=0
virtual void render(RenderState *renderState)
void accept(Traverser *traverser)
The central render state that collects information about the current shader, transformations,...
const glm::vec3 & getPosition() const
Camera * rotateYawRad(GLfloat angleRad)
virtual Camera * setMatrix(const glm::mat4 &matrix)
virtual void renderPost(RenderState *renderState)
Internal definitions required by most classes.
virtual void acceptPost(Traverser *traverser)
virtual Camera * rotateRad(GLfloat angleRad, glm::vec3 axis)