| Point Cloud Viewer
    1.00
    A Viewer to display point clouds with phong shading by converting them to splats. | 
This class provides camera functionality. More...
#include <camera.h>
Inherits Entity.
| Public Member Functions | |
| Camera () | |
| Creates a new camera.  More... | |
| void | activatePerspective (float aspect=1.0f, float fovy=90.0f, float zNear=0.1f, float zFar=100.0f) | 
| Switches the camera into perspective mode.  More... | |
| void | activateOrthographic (float aspect=1.0f, float yWidth=2.0f, float zNear=0.1f, float zFar=100.0f) | 
| Switches the camera into orthographic mode. NOT SUPPORTED!  More... | |
| void | setPos (QVector3D &pos) override | 
| Changes the entity's location.  More... | |
| void | setPos (float x, float y, float z) override | 
| Changes the entity's location.  More... | |
| void | setTarget (QVector3D &target) | 
| Changes the view target location.  More... | |
| QMatrix4x4 & | getVpMat () | 
| Returns a link to the view projection matrix.  More... | |
| QMatrix4x4 & | getVMat () | 
| Returns a link to the view matrix.  More... | |
| QMatrix4x4 & | getInvProjMat () | 
| Returns a link to the inverse projection matrix.  More... | |
| void | rotate (float deg_x, float deg_y) | 
| Rotates the camera.  More... | |
| void | move (float up, float right) | 
| Moves the camera.  More... | |
| float & | getPointSizeCoeff () | 
| Returns a pointer to the pointSizeCoeff.  More... | |
| QVector3D | getViewDependentMoveVector (float up, float right) | 
| Transforms a vector from view space to world space.  More... | |
| QVector3D | getViewTarget () | 
| Returns the location of the camera's view target.  More... | |
|  Public Member Functions inherited from Entity | |
| Entity (float x, float y, float z) | |
| Creates a new entity at the given location.  More... | |
| Entity () | |
| Creates a new entity at the origin (0,0,0). | |
| float | distance (Entity &to) | 
| Computes the euclidean distance to another entity.  More... | |
| float | distance (float x, float y, float z) | 
| Computes the euclidean distance to a location.  More... | |
| QVector3D | getPos () | 
| Returns the location of the entity.  More... | |
| Additional Inherited Members | |
|  Public Attributes inherited from Entity | |
| float | x | 
| The x coordinate of the entity's location. | |
| float | y | 
| The y coordinate of the entity's location. | |
| float | z | 
| The z coordinate of the entity's location. | |
This class provides camera functionality.
The rotation is free in yaw and pitch. The roll is fixed.
| Camera::Camera | ( | ) | 
Creates a new camera.
The camera is located at (1,0,0) with perspective activated. It points toward the origin.
| void Camera::activateOrthographic | ( | float | aspect = 1.0f, | 
| float | yWidth = 2.0f, | ||
| float | zNear = 0.1f, | ||
| float | zFar = 100.0f | ||
| ) | 
Switches the camera into orthographic mode. NOT SUPPORTED!
| aspect | The aspect ratio of the image plane (x/y) | 
| yWidth | The height of the image plane. | 
| zNear | The z value of the near plane. | 
| zFar | The z value of the far plane. | 
| void Camera::activatePerspective | ( | float | aspect = 1.0f, | 
| float | fovy = 90.0f, | ||
| float | zNear = 0.1f, | ||
| float | zFar = 100.0f | ||
| ) | 
Switches the camera into perspective mode.
| aspect | The aspect ratio of the image plane (x/y) | 
| fovy | The vertical field of view - e.g. 90 results in 45° up and 45° down. | 
| zNear | The z value of the near plane. | 
| zFar | The z value of the far plane. | 
| QMatrix4x4 & Camera::getInvProjMat | ( | ) | 
Returns a link to the inverse projection matrix.
The matrix link will stay valid while the camera exists and is kept up-to-date.
| float & Camera::getPointSizeCoeff | ( | ) | 
Returns a pointer to the pointSizeCoeff.
This value is needed for the visibility and the attribute pass to compute the Splat-BoundingBoxes. This link will stay valid while the camera exists and is kept up-to-date.
| QVector3D Camera::getViewDependentMoveVector | ( | float | up, | 
| float | right | ||
| ) | 
Transforms a vector from view space to world space.
Camera::getViewDependentMoveVector.
The x and y coordinates can be defined, the z coordinate is assumed 0.
| up | The y coordinate in view space. | 
| right | The x coordinate in view space. | 
| up | - 2D move from mouse, up/down | 
| right | - 2D move from mouse, right/left | 
| QVector3D Camera::getViewTarget | ( | ) | 
Returns the location of the camera's view target.
| QMatrix4x4 & Camera::getVMat | ( | ) | 
Returns a link to the view matrix.
The matrix link will stay valid while the camera exists and is kept up-to-date.
| QMatrix4x4 & Camera::getVpMat | ( | ) | 
Returns a link to the view projection matrix.
The matrix link will stay valid while the camera exists and is kept up-to-date.
| void Camera::move | ( | float | up, | 
| float | right | ||
| ) | 
Moves the camera.
The camera will be moved together with its view target resulting in no rotation.
| up | The amount of movement along the y camera-axis given in an abstract unit. | 
| right | The amount of movement along the x camera-axis given in an abstract unit. | 
| void Camera::rotate | ( | float | deg_x, | 
| float | deg_y | ||
| ) | 
Rotates the camera.
The camera will be rotated around the view target location while staying focused onto the target.
| deg_x | The angle of rotation around the y world-axis direction. | 
| deg_y | The angle of rotation around the x camera-axis direction. | 
| 
 | overridevirtual | 
| 
 | overridevirtual | 
Changes the entity's location.
| x | The new x coordinate. | 
| y | The new y coordinate. | 
| z | The new z coordinate. | 
Reimplemented from Entity.
| void Camera::setTarget | ( | QVector3D & | target | ) | 
Changes the view target location.
The rotation of the camera will be adjusted so that the target will project to the center of the image plane.
| target | The target location. |