Man Linux: Main Page and Category List

NAME

       SoQtConstrainedViewer - The SoQtConstrainedViewer class is the
       superclass for viewers with constrains on the viewpoint.

       This abstract viewer class adds new methods to keep the camera in an
       upright position according to some arbitrary up-direction. The up-
       direction can be decided by either the application programmer (by using
       SoQtConstrainedViewer::setUpDirection()) or the end-user, through
       interaction mechanisms defined by the subclasses.

SYNOPSIS

       #include <Inventor/Qt/viewers/SoQtConstrainedViewer.h>

       Inherits SoQtFullViewer.

       Inherited by SoQtFlyViewer.

   Public Member Functions
       void setUpDirection (const SbVec3f &dir)
       const SbVec3f & getUpDirection (void) const
       virtual void setCamera (SoCamera *newcam)
       virtual void saveHomePosition (void)
       virtual void resetToHomePosition (void)

   Protected Member Functions
       SoQtConstrainedViewer (QWidget *parent, const char *const name, SbBool
           embed, SoQtFullViewer::BuildFlag flag, SoQtViewer::Type type,
           SbBool build)
       ~SoQtConstrainedViewer ()
       virtual void tiltCamera (float delta)
       virtual void bottomWheelMotion (float value)
       virtual void leftWheelMotion (float value)
       virtual void changeCameraValues (SoCamera *camera)
       void findUpDirection (SbVec2s mouselocation)
       void checkForCameraUpConstrain (void)

Detailed Description

       The SoQtConstrainedViewer class is the superclass for viewers with
       constrains on the viewpoint.

       This abstract viewer class adds new methods to keep the camera in an
       upright position according to some arbitrary up-direction. The up-
       direction can be decided by either the application programmer (by using
       SoQtConstrainedViewer::setUpDirection()) or the end-user, through
       interaction mechanisms defined by the subclasses.

Constructor & Destructor Documentation

   SoQtConstrainedViewer::SoQtConstrainedViewer (QWidget * parent, const char
       *const  name, SbBool embed, SoQtFullViewer::BuildFlag flag,
       SoQtViewer::Type type, SbBool build) [protected]
       Constructor.

       References SoQtFullViewer::buildWidget(),
       SoQtComponent::getParentWidget(), SoQtComponent::setBaseWidget(),
       SoQtFullViewer::setBottomWheelString(), SoQtComponent::setClassName(),
       SoQtFullViewer::setLeftWheelString(), and
       SoQtFullViewer::setRightWheelString().

   SoQtConstrainedViewer::~SoQtConstrainedViewer () [protected]
       Virtual destructor.

Member Function Documentation

   void SoQtConstrainedViewer::setUpDirection (const SbVec3f & dir)
       Set up-direction vector for the camera viewpoint.

       References checkForCameraUpConstrain(), and SoQtViewer::getCamera().

       Referenced by findUpDirection().

   const SbVec3f & SoQtConstrainedViewer::getUpDirection (void) const
       Return up-direction vector for the camera viewpoint.

       Referenced by tiltCamera().

   void SoQtConstrainedViewer::setCamera (SoCamera * cam) [virtual]
       Set the camera we want the viewer to manipulate when interacting with
       the viewer controls.

       The camera passed in as an argument to this method must already be part
       of the viewer’s scenegraph. You do not inject viewpoint cameras to the
       viewer with this method.

       You should rather insert a camera into the scene graph first (if
       necessary, often one will be present already), then register it as the
       camera used by the viewer controls with this method.

       If the application code doesn’t explicitly set up a camera through this
       method, the viewer will automatically scan through the scenegraph to
       find a camera to use. If no camera is available in the scenegraph at
       all, it will set up it’s own camera.

       See also:
           getCamera()

       Reimplemented from SoQtViewer.

       Reimplemented in SoQtFlyViewer.

       References checkForCameraUpConstrain().

   void SoQtConstrainedViewer::saveHomePosition (void) [virtual]
       Store the current camera settings for later retrieval with
       resetToHomePosition().

       See also:
           resetToHomePosition()

       Reimplemented from SoQtViewer.

   void SoQtConstrainedViewer::resetToHomePosition (void) [virtual]
       Restore the saved camera settings.

       See also:
           saveHomePosition()

       Reimplemented from SoQtViewer.

       Reimplemented in SoQtFlyViewer.

   void SoQtConstrainedViewer::tiltCamera (float delta) [protected, virtual]
       This method tilts the camera delta degrees closer to the up direction.

       References SoQtViewer::getCamera(), and getUpDirection().

       Referenced by leftWheelMotion().

   void SoQtConstrainedViewer::bottomWheelMotion (float value) [protected,
       virtual]
       Called repeatedly as the user drags the thumbwheel in the bottom frame.
       Override this method in subclassed viewers to provide your own
       functionality on the thumbwheel.

       See also:
           bottomWheelStart(), bottomWheelFinish()

           leftWheelStart(), rightWheelStart()

       Reimplemented from SoQtFullViewer.

       References SoQtFullViewer::getBottomWheelValue().

   void SoQtConstrainedViewer::leftWheelMotion (float value) [protected,
       virtual]
       Called repeatedly as the user drags the thumbwheel in the left frame.
       Override this method in subclassed viewers to provide your own
       functionality on the thumbwheel.

       See also:
           leftWheelStart(), leftWheelFinish()

           bottomWheelStart(), rightWheelStart()

       Reimplemented from SoQtFullViewer.

       References SoQtFullViewer::getLeftWheelValue(), and tiltCamera().

   void SoQtConstrainedViewer::changeCameraValues (SoCamera * camera)
       [protected, virtual]
       Copies the settings of camera into our current camera. Cameras must be
       of the same class type.

       Reimplemented from SoQtViewer.

       References checkForCameraUpConstrain().

   void SoQtConstrainedViewer::findUpDirection (SbVec2s mouselocation)
       [protected]
       Executes a raypick at the given mousepointer location and sets the
       viewer’s camera up-vector direction to the normal vector of the picked
       geometry.

       References SoQtRenderArea::getSceneManager(),
       SoQtRenderArea::getViewportRegion(), and setUpDirection().

   void SoQtConstrainedViewer::checkForCameraUpConstrain (void) [protected]
       If necessary, ’tilts’ the camera sideways so the up-direction is
       heeded.

       References SoQtViewer::getCamera().

       Referenced by changeCameraValues(), setCamera(), and setUpDirection().

Author

       Generated automatically by Doxygen for SoQt from the source code.