GlobeEngine
at::CollisionCamera Class Reference

#include <CollisionCamera.h>

Inheritance diagram for at::CollisionCamera:
ge::FlightCamera ge::Camera

Public Member Functions

 CollisionCamera (float near_, float far_)
 
 CollisionCamera ()
 
 ~CollisionCamera ()
 
void addObservedObject (ge::DrawableComponent *observable_, float collisionInnerBound_, float collisionOuterBound_)
 
void replaceObservedObject (ge::DrawableComponent *observable_, float collisionInnerBound_, float collisionOuterBound_)
 
void changeAlongYAxis (float _amount)
 
void changeWithinXZPlane (vmml::Vector2f _changeVector, double _speed)
 
void changeWithinXZPlane (vmml::Vector2f _changeVector)
 
void changeInDirection (float _value)
 
float getDistanceToObject (float pointer_, vmml::Vector3d projectedCameraCoordinates_)
 
vmml::Vector3d getCameraCoordinates (vmml::Vector3d vec_)
 
float determineAction (vmml::Vector3d projectedCameraCoordinates_)
 
vmml::Vector3d projectInDirection (float amount_)
 
vmml::Vector3d projectAlongYAxis (float amount_)
 
vmml::Vector3d projectWithinXZPlane (vmml::Vector2f _changeVector)
 
- Public Member Functions inherited from ge::FlightCamera
 FlightCamera ()
 
 ~FlightCamera ()
 
void clear () override
 
void destroy () override
 
void update () override
 
void print () override
 
void create (ViewFrustumProperties _in)
 
void create (ViewFrustumProperties _in, vmml::Vector3d _pos, double _velocity, double _pitch, double _heading)
 
void create (ViewFrustumProperties _in, vmml::Vector3d _pos, vmml::Vector3d _camDir, vmml::Vector3d _camRight, vmml::Vector3d _camUp, double _velocity, double _pitch, double _heading)
 
void createQuatFromAxisAngle (vmml::Quaterniond &quat, GLfloat x, GLfloat y, GLfloat z, GLfloat degrees)
 
void calculateViewMatrix () override
 
void setPitch (GLfloat _deg)
 
void setHeading (GLfloat _deg)
 
void changeHeading (GLfloat _degrees)
 
void changePitch (GLfloat _degrees)
 
void changeWithinXZPlane (vmml::Vector2f _changeVector)
 
void changeInDirection (float _value)
 
void setMoving_X (GLint _value)
 
void setMoving_Z (GLint _value)
 
double getVelocity ()
 
void setVelocity (double _velocity)
 
double getHeading ()
 
double getPitch ()
 
- Public Member Functions inherited from ge::Camera
 Camera ()
 
 ~Camera ()
 
virtual void changeSetup (ViewFrustumProperties _in)
 
void setOrthographic ()
 
void setPerspective (int _w=0, int _h=0)
 
void setOrthoCoordinates (vmml::Vector4d _coords)
 
void setViewportSize (int _w, int _h)
 
void setViewportSize (vmml::Vector2d _viewport)
 
vmml::Vector2d getScreenposForPoint (vmml::Vector3d _p, vmml::Matrix4d _modelMatrix)
 
enum Camera::AXIS getOrientationAxis ()
 
enum Camera::AXIS getOrientationFromString (std::string _input)
 
void setOrientationAxis (enum AXIS _in)
 
vmml::Vector2d getViewport () const
 
void applyViewport ()
 
std::shared_ptr< ge::ViewFrustum > const & getViewFrustum () const
 
vmml::Matrix4d getViewMatrix () const
 
void setViewMatrix (vmml::Matrix4d _viewMatrix)
 
vmml::Vector3d getRelativePositionToCenter () const
 
vmml::Vector3d getScenePosition () const
 
void setScenePosition (vmml::Vector3d _pos)
 
void setRelativePositionToCenter (vmml::Vector3d _pos)
 
double getDistanceToCamera (vmml::Vector3d _p) const
 
vmml::Vector3d getDirection () const
 
enum CAMERATYPE getType ()
 
bool hasChanged ()
 
vmml::Matrix4d getProjectionMatrix () const
 
void setProjectionMatrix (vmml::Matrix4d _projectionMatrix)
 
vmml::Matrix4d getViewProjectionMatrix () const
 
void setViewProjectionMatrix (vmml::Matrix4d _viewprojectionMatrix)
 
void enableOrthoProjection ()
 
void disableOrthoProjection ()
 
void setChanged ()
 
vmml::Matrix4d getInverseViewMatrix () const
 
vmml::Matrix4d getInverseProjectionMatrix () const
 
vmml::Matrix4d getInverseProjectionViewMatrix () const
 
vmml::Vector4d getOrthoCoordinates () const
 

Additional Inherited Members

- Public Types inherited from ge::Camera
enum  CAMERATYPE { NORMAL, ARCBALL, STRATEGIC }
 
enum  AXIS { XZ_AXIS = 0, XY_AXIS, YZ_AXIS }
 
- Static Public Member Functions inherited from ge::Camera
static vmml::Matrix4d createOrthoProjectionMatrix (double l, double r, double b, double t, double n, double f)
 
- Protected Member Functions inherited from ge::FlightCamera
void create (ViewFrustumProperties _in, vmml::Vector3d _pos)
 
- Protected Member Functions inherited from ge::Camera
void moveFrustum ()
 
void setStandardVectors ()
 
vmml::Matrix4d createPerspectiveProjectionMatrix (double fovy, double aspect, double zNear, double zFar)
 
vmml::Matrix4d createFrustumMatrix (double left, double right, double bottom, double top, double zNear, double zFar)
 
vmml::Matrix4d getRotationMatrix (const vmml::Quaterniond &quat)
 
- Protected Attributes inherited from ge::FlightCamera
GLfloat maxPitchRate
 
GLfloat maxHeadingRate
 
GLfloat headingDegrees
 
GLfloat pitchDegrees
 
vmml::Quaterniond quatHeading
 
vmml::Quaterniond quatPitch
 
double velocity
 
GLint moving_X
 
GLint moving_Z
 
- Protected Attributes inherited from ge::Camera
enum CAMERATYPE type
 
enum Camera::AXIS orientation_axis
 
std::shared_ptr< ge::ViewFrustumviewfrustum
 
vmml::Vector2d viewport
 
vmml::Vector3d camPosition
 
vmml::Vector3d camRight
 
vmml::Vector3d camUp
 
vmml::Vector3d camDirection
 
vmml::Matrix4d viewMatrix
 
vmml::Matrix4d projectionMatrix
 
vmml::Matrix4d viewProjectionMatrix
 
vmml::Matrix4d perspectiveProjectionMatrix
 
vmml::Matrix4d orthoProjectionMatrix
 
vmml::Vector4d orthoCoord
 
bool changed
 
bool orthoProjMode
 
GLuint cameraBuffers [2]
 

Constructor & Destructor Documentation

at::CollisionCamera::CollisionCamera ( float  near_,
float  far_ 
)
at::CollisionCamera::CollisionCamera ( )
at::CollisionCamera::~CollisionCamera ( )

Member Function Documentation

void at::CollisionCamera::addObservedObject ( ge::DrawableComponent observable_,
float  collisionInnerBound_,
float  collisionOuterBound_ 
)
void at::CollisionCamera::changeAlongYAxis ( float  _amount)
void at::CollisionCamera::changeInDirection ( float  _value)
void at::CollisionCamera::changeWithinXZPlane ( vmml::Vector2f  _changeVector,
double  _speed 
)
void at::CollisionCamera::changeWithinXZPlane ( vmml::Vector2f  _changeVector)
float at::CollisionCamera::determineAction ( vmml::Vector3d  projectedCameraCoordinates_)
vmml::Vector3d at::CollisionCamera::getCameraCoordinates ( vmml::Vector3d  vec_)
float at::CollisionCamera::getDistanceToObject ( float  pointer_,
vmml::Vector3d  projectedCameraCoordinates_ 
)
vmml::Vector3d at::CollisionCamera::projectAlongYAxis ( float  amount_)
vmml::Vector3d at::CollisionCamera::projectInDirection ( float  amount_)
vmml::Vector3d at::CollisionCamera::projectWithinXZPlane ( vmml::Vector2f  _changeVector)
void at::CollisionCamera::replaceObservedObject ( ge::DrawableComponent observable_,
float  collisionInnerBound_,
float  collisionOuterBound_ 
)

The documentation for this class was generated from the following files: