Klamp't  0.8.1
Public Types | Public Member Functions | Public Attributes | List of all members
GLNavigationBackend Class Reference

A backend that manages a camera and performs OpenGL scene management. More...

#include <NavigationGUI.h>

Inheritance diagram for GLNavigationBackend:
MouseDragBackend GenericBackendBase WorldGUIBackend ResourceGUIBackend RobotTestBackend SimGUIBackend RobotPoseBackend SimTestBackend

Public Types

typedef MouseDragBackend BaseT
 

Public Member Functions

virtual void SetWorldLights ()
 
virtual void RenderWorld ()
 
virtual void RenderScreen ()
 
virtual void Start ()
 Default implementation of following do nothing.
 
virtual bool OnIdle ()
 
virtual bool OnGLRender ()
 
virtual bool OnGLViewport (int x, int y, int w, int h)
 
virtual bool OnMouseWheel (int dwheel)
 
virtual bool OnCommand (const string &cmd, const string &args)
 
virtual void BeginDrag (int x, int y, int button, int modifiers)
 
virtual void DoFreeDrag (int dx, int dy, int button)
 Overload this for regular (non-modified) dragging.
 
virtual void DoCtrlDrag (int dx, int dy, int button)
 Overload this for control-dragging.
 
virtual void DoAltDrag (int dx, int dy, int button)
 Overload this for alt-dragging.
 
virtual void DoShiftDrag (int dx, int dy, int button)
 Overload this for shift-dragging.
 
void DragPan (int dx, int dy)
 
void DragRotate (int dx, int dy)
 
void DragZoom (int dx, int dy)
 
void DragTruck (int dx, int dy)
 
void Set2DMode (bool mode=true)
 
void DisplayCameraTarget ()
 
void CenterCameraOn (const Math3D::AABB3D &bbox)
 
void ClickRay (int x, int y, Math3D::Vector3 &src, Math3D::Vector3 &dir) const
 
void WriteDisplaySettings (std::ostream &out) const
 
void ReadDisplaySettings (std::istream &in)
 
- Public Member Functions inherited from MouseDragBackend
virtual bool OnMouseClick (int button, int state, int mx, int my)
 
virtual bool OnMouseMove (int mx, int my)
 
virtual bool OnKeyDown (const string &key)
 
virtual bool OnKeyUp (const string &key)
 
virtual void DoDrag (int dx, int dy, int button, int modifiers)
 
virtual void EndDrag (int x, int y, int button, int modifiers)
 
virtual void DoPassiveMouseMove (int x, int y)
 Overload this to handle plain, non-dragging mouse motion events.
 
- Public Member Functions inherited from GenericBackendBase
virtual void Stop ()
 
virtual bool ProcessMessage (const AnyCollection &msg)
 
virtual bool SendMessage (const AnyCollection &msg)
 Send a message to the gui.
 
void MapButtonPress (const string &button, int *var)
 
void MapButtonToggle (const string &button, int *var)
 
void MapWidgetValue (const string &button, string *var)
 
void MapKeyToggle (const string &key, int *var)
 
virtual bool OnButtonPress (const string &button)
 
virtual bool OnButtonToggle (const string &button, int checked)
 
virtual bool OnWidgetValue (const string &widget, const string &value)
 
virtual bool OnScroll (int dy)
 
virtual bool OnSpaceball (const Math3D::RigidTransform &T)
 
virtual bool OnDevice (const string &name, const string &data)
 
bool SendQuit ()
 
bool SendCommand (const string &cmd, const string &args)
 
bool SendNotify (const string &text, const string &msglevel="")
 
bool SendError (const string &text)
 
bool SendWarning (const string &text)
 
bool SendPauseIdle (double secs=1e300)
 
bool SendRefresh ()
 
bool SendResize (int w, int h)
 
bool SendDrawText (double x, double y, double z, const std::string &text, int height=10)
 
bool SendDrawText (int x, int y, const std::string &text, int height=10)
 

Public Attributes

Camera::Viewport viewport
 
Camera::CameraController_Orbit camera
 
bool stereo_mode
 
float stereo_offset
 
Timer timer
 
int show_view_target
 
float t_hide_view_target
 
float frames_per_second
 
bool show_frames_per_second
 
int frames_rendered
 
bool mode_2d
 
- Public Attributes inherited from MouseDragBackend
int oldmousex
 
int oldmousey
 
int clickButton
 
int clickModifiers
 
- Public Attributes inherited from GenericBackendBase
GenericGUIBasegui
 
map< string, int * > liveButtonPresses
 
map< string, int * > liveButtonToggles
 
map< string, string * > liveWidgetValues
 
map< string, int * > liveKeys
 

Detailed Description

A backend that manages a camera and performs OpenGL scene management.

The World is rendered from the perspective of the mouse-controlled camera.

The Screen is rendered with pixel coordinates (0,0) in the upper left, with x axis pointing right and y axis pointing down.


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