OrbitViewController Class Reference

Orbit view controller. More...

#include <OrbitViewController.hh>

Inherits ViewController.

Inherited by OrthoViewController.

Public Member Functions

 OrbitViewController (UserCameraPtr _camera, const std::string &_name="OrbitViewController")
 Constructor. More...
 
virtual ~OrbitViewController ()
 Destructor. More...
 
ignition::math::Vector3d FocalPoint () const
 Get the focal point. More...
 
std::string GetTypeString () const
 Get the type of view controller. More...
 
virtual void HandleKeyPressEvent (const std::string &_key)
 Handle a key press event. More...
 
void HandleKeyReleaseEvent (const std::string &_key)
 Handle a key release event. More...
 
virtual void HandleMouseEvent (const common::MouseEvent &_event)
 Handle a mouse event. More...
 
virtual void Init ()
 Initialize the controller. More...
 
virtual void Init (const ignition::math::Vector3d &_focalPoint, const double _yaw=0, const double _pitch=0)
 Initialize with a focus point. More...
 
double Pitch () const
 
virtual void Resize (const unsigned int _width, const unsigned int _height)
 Called by the UserCamera when a resize event occurs. More...
 
void SetDistance (float _d)
 Set the distance to the focal point. More...
 
void SetEnabled (bool _value)
 Set whether the controller is enabled. More...
 
void SetFocalPoint (const ignition::math::Vector3d &_fp)
 Set the focal point. More...
 
virtual void Update ()
 Update. More...
 
double Yaw () const
 

Static Public Member Functions

static std::string GetTypeString ()
 Get the type name of this view controller. More...
 

Protected Member Functions

double NormalizePitch (double _v)
 Normalize pitch value. More...
 
double NormalizeYaw (double _v)
 Normalize yaw value. More...
 
void Orbit (double _dy, double _dp)
 Update the camera's pose based on a rotation update. More...
 
void TranslateGlobal (const ignition::math::Vector3d &_vec)
 Translate the focal point in the global coordinate frame. More...
 
void TranslateLocal (const ignition::math::Vector3d &_vec)
 Translate the focal point in the local coordinate frame. More...
 
void UpdateRefVisual ()
 Update the reference visual. More...
 
void Zoom (float _amount)
 Zoom the camera. More...
 

Protected Attributes

UserCameraPtr camera
 Pointer to the camera to control. More...
 
float distance
 Distance to the focal point. More...
 
bool enabled
 True if enabled. More...
 
ignition::math::Vector3d focalPoint
 The focal point. More...
 
bool init
 A flag used to inidicate that the view controller has just been initialized. More...
 
std::string key
 Key that is currently pressed. More...
 
float pitch
 Pitch value. More...
 
VisualPtr refVisual
 A reference visual. More...
 
std::string typeString
 Type of view controller. More...
 
float yaw
 Yaw value. More...
 

Detailed Description

Orbit view controller.

Constructor & Destructor Documentation

◆ OrbitViewController()

OrbitViewController ( UserCameraPtr  _camera,
const std::string &  _name = "OrbitViewController" 
)

Constructor.

Parameters
[in]_cameraPointer to the camera to control.
[in]_nameName of the view controller. A subclass of OrbitViewController should use a name other than "OrbitViewController".

◆ ~OrbitViewController()

virtual ~OrbitViewController ( )
virtual

Destructor.

Member Function Documentation

◆ FocalPoint()

ignition::math::Vector3d FocalPoint ( ) const

Get the focal point.

Returns
The focal point

◆ GetTypeString() [1/2]

static std::string GetTypeString ( )
static

Get the type name of this view controller.

Returns
The view controller name: "orbit".

◆ GetTypeString() [2/2]

std::string GetTypeString ( ) const
inherited

Get the type of view controller.

Returns
The view controller type string.

◆ HandleKeyPressEvent()

virtual void HandleKeyPressEvent ( const std::string &  _key)
virtual

Handle a key press event.

Parameters
[in]_keyThe key that was pressed.

Implements ViewController.

◆ HandleKeyReleaseEvent()

void HandleKeyReleaseEvent ( const std::string &  _key)
virtual

Handle a key release event.

Parameters
[in]_keyThe key that was released.

Implements ViewController.

◆ HandleMouseEvent()

virtual void HandleMouseEvent ( const common::MouseEvent _event)
virtual

Handle a mouse event.

Parameters
[in]_eventThe mouse event.

Implements ViewController.

Reimplemented in OrthoViewController.

◆ Init() [1/2]

virtual void Init ( )
virtual

Initialize the controller.

Implements ViewController.

Reimplemented in OrthoViewController.

◆ Init() [2/2]

virtual void Init ( const ignition::math::Vector3d &  _focalPoint,
const double  _yaw = 0,
const double  _pitch = 0 
)
virtual

Initialize with a focus point.

Parameters
[in]_focalPointThe point to look at.
[in]_yawInitial yaw angle.
[in]_pitchInitial pitch angle.

Reimplemented from ViewController.

Reimplemented in OrthoViewController.

◆ NormalizePitch()

double NormalizePitch ( double  _v)
protected

Normalize pitch value.

[in] _v Normalize a pitch value.

Returns
The normalized value.

◆ NormalizeYaw()

double NormalizeYaw ( double  _v)
protected

Normalize yaw value.

[in] _v Normalize a yaw value.

Returns
The normalized value.

◆ Orbit()

void Orbit ( double  _dy,
double  _dp 
)
protected

Update the camera's pose based on a rotation update.

Parameters
[in]_dyDelta yaw movement.
[in]_dpDelta pitch movement.

◆ Pitch()

double Pitch ( ) const

◆ Resize()

virtual void Resize ( const unsigned int  _width,
const unsigned int  _height 
)
virtualinherited

Called by the UserCamera when a resize event occurs.

Parameters
[in]_widthNew width
[in]_heightNew height

Reimplemented in OrthoViewController.

◆ SetDistance()

void SetDistance ( float  _d)

Set the distance to the focal point.

Parameters
[in]_dThe distance from the focal point.

◆ SetEnabled()

void SetEnabled ( bool  _value)
inherited

Set whether the controller is enabled.

Parameters
[in]_valueTrue if the controller is enabled.

◆ SetFocalPoint()

void SetFocalPoint ( const ignition::math::Vector3d &  _fp)

Set the focal point.

Parameters
[in]_fpThe focal point

◆ TranslateGlobal()

void TranslateGlobal ( const ignition::math::Vector3d &  _vec)
protected

Translate the focal point in the global coordinate frame.

Parameters
[in]_vecDirection and amount to translate the camera.

◆ TranslateLocal()

void TranslateLocal ( const ignition::math::Vector3d &  _vec)
protected

Translate the focal point in the local coordinate frame.

Parameters
[in]_vecDirection and amount to translate the camera.

◆ Update()

virtual void Update ( )
virtual

Update.

Implements ViewController.

◆ UpdateRefVisual()

void UpdateRefVisual ( )
protected

Update the reference visual.

◆ Yaw()

double Yaw ( ) const

◆ Zoom()

void Zoom ( float  _amount)
protected

Zoom the camera.

[in] _amount Zoom quatity.

Member Data Documentation

◆ camera

UserCameraPtr camera
protectedinherited

Pointer to the camera to control.

◆ distance

float distance
protected

Distance to the focal point.

◆ enabled

bool enabled
protectedinherited

True if enabled.

◆ focalPoint

ignition::math::Vector3d focalPoint
protected

The focal point.

◆ init

bool init
protected

A flag used to inidicate that the view controller has just been initialized.

◆ key

std::string key
protected

Key that is currently pressed.

◆ pitch

float pitch
protected

Pitch value.

◆ refVisual

VisualPtr refVisual
protected

A reference visual.

◆ typeString

std::string typeString
protectedinherited

Type of view controller.

◆ yaw

float yaw
protected

Yaw value.


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