OSVR-Core
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Camera Class Reference

Public Member Functions

 Camera (const Camera &other)
 
Cameraoperator= (const Camera &other)
 
void setViewport (uint offsetx, uint offsety, uint width, uint height)
 
void setViewport (uint width, uint height)
 
uint vpX (void) const
 
uint vpY (void) const
 
uint vpWidth (void) const
 
uint vpHeight (void) const
 
float fovY (void) const
 
void setFovY (float value)
 
void setPosition (const Eigen::Vector3f &pos)
 
const Eigen::Vector3f & position (void) const
 
void setOrientation (const Eigen::Quaternionf &q)
 
const Eigen::Quaternionforientation (void) const
 
void setFrame (const Frame &f)
 
const Frameframe (void) const
 
void setDirection (const Eigen::Vector3f &newDirection)
 
Eigen::Vector3f direction (void) const
 
void setUp (const Eigen::Vector3f &vectorUp)
 
Eigen::Vector3f up (void) const
 
Eigen::Vector3f right (void) const
 
void setTarget (const Eigen::Vector3f &target)
 
const Eigen::Vector3f & target (void)
 
const Eigen::Affine3fviewMatrix (void) const
 
const Eigen::Matrix4f & projectionMatrix (void) const
 
void rotateAroundTarget (const Eigen::Quaternionf &q)
 
void localRotate (const Eigen::Quaternionf &q)
 
void zoom (float d)
 
void localTranslate (const Eigen::Vector3f &t)
 
void activateGL (void)
 Setup OpenGL matrices and viewport.
 
Eigen::Vector3f unProject (const Eigen::Vector2f &uv, float depth, const Eigen::Matrix4f &invModelview) const
 
Eigen::Vector3f unProject (const Eigen::Vector2f &uv, float depth) const
 

Protected Member Functions

void updateViewMatrix (void) const
 
void updateProjectionMatrix (void) const
 

Protected Attributes

uint mVpX
 
uint mVpY
 
uint mVpWidth
 
uint mVpHeight
 
Frame mFrame
 
Eigen::Affine3f mViewMatrix
 
Eigen::Matrix4f mProjectionMatrix
 
bool mViewIsUptodate
 
bool mProjIsUptodate
 
Eigen::Vector3f mTarget
 
float mFovY
 
float mNearDist
 
float mFarDist
 

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