Base viewer class which adds camera constraints given a world up direction. More...
#include <Inventor/Win/viewers/SoWinConstrainedViewer.h>
Public Member Functions | |
void | setUpDirection (const SbVec3f &newUpDirection) |
SbVec3f | getUpDirection () |
virtual void | setCamera (SoCamera *newCam) |
virtual void | saveHomePosition () |
virtual void | resetToHomePosition () |
virtual void | recomputeSceneSize () |
This is a base class for the SoWinWalkViewer and SoWinFlyViewer component viewers. This class adds methods and convenience routines available to subclasses to constrain the camera given a world up direction. This prevents the camera from looking upside down. By default the +Y direction is used.
SoWinFullViewer, SoWinViewer, SoWinComponent, SoWinRenderArea, SoWinWalkViewer, SoWinFlyViewer
SbVec3f SoWinConstrainedViewer::getUpDirection | ( | ) | [inline] |
Returns the upward direction of the viewer.
virtual void SoWinConstrainedViewer::recomputeSceneSize | ( | ) | [virtual] |
This can be used to let the viewer know that the scene graph has changed so that the viewer can recompute things like speed which depend on the scene graph size.
Note: This routine is automatically called whenever setSceneGraph() is called.
Reimplemented from SoWinViewer.
virtual void SoWinConstrainedViewer::resetToHomePosition | ( | ) | [virtual] |
virtual void SoWinConstrainedViewer::saveHomePosition | ( | ) | [virtual] |
Saves the camera values.
Reimplemented from SoWinViewer.
virtual void SoWinConstrainedViewer::setCamera | ( | SoCamera * | cam | ) | [virtual] |
Sets the edited camera.
Setting the camera is only needed if the first camera found in the scene when setting the scene graph isn't the one the user really wants to edit.
Reimplemented from SoWinFullViewer.
Reimplemented in SoWinFlyViewer, and SoWinWalkViewer.
void SoWinConstrainedViewer::setUpDirection | ( | const SbVec3f & | newUpDirection | ) |
Specifies the upward direction of the viewer.
This up direction is used by the viewers to constrain the camera when tilting up/down, and also used when rotating the camera right/left. The default is the +Y (0,1,0) direction.