Abstract interface class representing a generic camera.
More...
#include <icamera.h>
Inherits mi::base::Interface_declare< 0x1247f2e7, ... >.
|
virtual void | set (const mi::math::Vector_struct< mi::Float32, 3 > &eye_point, const mi::math::Vector_struct< mi::Float32, 3 > &view_direction, const mi::math::Vector_struct< mi::Float32, 3 > &up_direction)=0 |
| Set the basic camera parameters. More...
|
|
virtual void | set_eye_point (const mi::math::Vector_struct< mi::Float32, 3 > &eye_point)=0 |
| Sets the eye point (the origin of the camera's coordinate system). More...
|
|
virtual mi::math::Vector_struct< mi::Float32, 3 > | get_eye_point () const =0 |
| Returns the eye point (the origin of the camera's coordinate system). More...
|
|
virtual bool | set_view_direction (const mi::math::Vector_struct< mi::Float32, 3 > &view_direction)=0 |
| Set the view direction. More...
|
|
virtual mi::math::Vector_struct< mi::Float32, 3 > | get_view_direction () const =0 |
| Returns the normalized view direction. More...
|
|
virtual void | set_up_direction (const mi::math::Vector_struct< mi::Float32, 3 > &up_direction)=0 |
| Sets the up vector. More...
|
|
virtual mi::math::Vector_struct< mi::Float32, 3 > | get_up_direction () const =0 |
| Returns the normalized up vector. More...
|
|
Abstract interface class representing a generic camera.
Both perspective projection and orthographic projection are supported through the sub-interface classes IPerspective_camera
and IOrthographic_camera
.
The base class contains general attributes allowing the positioning and orientation of the camera in the virtual scene.
A camera's position and orientation are defined by three parameters. The camera's position is defined in space (the eye point). The camera's viewing direction is defined by the viewing direction). Rotation around the viewing direction as an axis is defined by a vector which represents "straight up" (the up vector).
Instances of ICamera
implementations are created by IScene::create_camera()
.
Note: ICamera is not a IScene_element.
◆ get_eye_point()
virtual mi::math::Vector_struct< mi::Float32, 3 > nv::index::ICamera::get_eye_point |
( |
| ) |
const |
|
pure virtual |
Returns the eye point (the origin of the camera's coordinate system).
- Returns
- Eye point
◆ get_up_direction()
virtual mi::math::Vector_struct< mi::Float32, 3 > nv::index::ICamera::get_up_direction |
( |
| ) |
const |
|
pure virtual |
Returns the normalized up vector.
- Returns
- Normalized up vector
◆ get_view_direction()
virtual mi::math::Vector_struct< mi::Float32, 3 > nv::index::ICamera::get_view_direction |
( |
| ) |
const |
|
pure virtual |
Returns the normalized view direction.
- Returns
- Normalized view direction
◆ set()
virtual void nv::index::ICamera::set |
( |
const mi::math::Vector_struct< mi::Float32, 3 > & |
eye_point, |
|
|
const mi::math::Vector_struct< mi::Float32, 3 > & |
view_direction, |
|
|
const mi::math::Vector_struct< mi::Float32, 3 > & |
up_direction |
|
) |
| |
|
pure virtual |
Set the basic camera parameters.
A convenienve method for setting up basic camera parameters.
- Parameters
-
[in] | eye_point | Camera eye point |
[in] | view_direction | Viewing direction |
[in] | up_direction | Up vector |
◆ set_eye_point()
virtual void nv::index::ICamera::set_eye_point |
( |
const mi::math::Vector_struct< mi::Float32, 3 > & |
eye_point | ) |
|
|
pure virtual |
Sets the eye point (the origin of the camera's coordinate system).
- Parameters
-
◆ set_up_direction()
virtual void nv::index::ICamera::set_up_direction |
( |
const mi::math::Vector_struct< mi::Float32, 3 > & |
up_direction | ) |
|
|
pure virtual |
Sets the up vector.
- Parameters
-
[in] | up_direction | Up vector, will be normalized. |
◆ set_view_direction()
virtual bool nv::index::ICamera::set_view_direction |
( |
const mi::math::Vector_struct< mi::Float32, 3 > & |
view_direction | ) |
|
|
pure virtual |
Set the view direction.
- Parameters
-
[in] | view_direction | Camera direction vector. |
- Returns
- true when succeeded.
The documentation for this class was generated from the following file: