Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SoXtFlyViewer — viewer component for flying through space, with a constant world up

INHERITS FROM

       SoXtComponent   >   SoXtGLWidget   >   SoXtRenderArea  >  SoXtViewer  >  SoXtFullViewer  >
       SoXtConstrainedViewer > SoXtFlyViewer

SYNOPSIS

       #include <Inventor/Xt/viewers/SoXtFlyViewer.h>

          Methods from class SoXtFlyViewer:

                         SoXtFlyViewer(Widget parent = NULL, const  char  *name  =  NULL,  SbBool
                              buildInsideParent   =   TRUE,   SoXtFullViewer::BuildFlag   flag  =
                              BUILD_ALL, SoXtViewer::Type type = BROWSER)
                         ~SoXtFlyViewer()

          Methods from class SoXtConstrainedViewer:

     void                setUpDirection(const SbVec3f &newUpDirection)
     SbVec3f             getUpDirection()

          Methods from class SoXtFullViewer:

     void                setDecoration(SbBool onOrOff)
     SbBool              isDecoration()
     void                setPopupMenuEnabled(SbBool trueOrFalse)
     SbBool              isPopupMenuEnabled()
     Widget              getAppPushButtonParent() const
     void                addAppPushButton(Widget newButton)
     void                insertAppPushButton(Widget newButton, int index)
     void                removeAppPushButton(Widget oldButton)
     int                 findAppPushButton(Widget oldButton)
     int                 lengthAppPushButton()
     Widget              getRenderAreaWidget()

          Methods from class SoXtViewer:

     virtual void            setCamera(SoCamera *cam)
     SoCamera *              getCamera()
     virtual void            setCameraType(SoType type)
     SoType                  getCameraType()
     virtual void            viewAll()
     virtual void            saveHomePosition()
     virtual void            resetToHomePosition()
     virtual void            setHeadlight(SbBool onOrOff)
     SbBool                  isHeadlight()
     SoDirectionalLight *    getHeadlight()
     virtual void            setDrawStyle(SoXtViewer::DrawType type, SoXtViewer::DrawStyle style)
     SoXtViewer::DrawStyle   getDrawStyle(SoXtViewer::DrawType type)
     virtual void            setBufferingType(SoXtViewer::BufferType type)
     SoXtViewer::BufferType  getBufferingType()
     virtual void            setViewing(SbBool onOrOff)
     SbBool                  isViewing() const
     virtual void            setCursorEnabled(SbBool onOrOff)
     SbBool                  isCursorEnabled() const
     void                    setAutoClipping(SbBool onOrOff)
     SbBool                  isAutoClipping() const
     virtual void            setStereoViewing(SbBool onOrOff)
     virtual SbBool          isStereoViewing()
     void                    setStereoOffset(float dist)
     float                   getStereoOffset()
     void                    setDetailSeek(SbBool onOrOff)
     SbBool                  isDetailSeek()
     void                    setSeekTime(float seconds)
     float                   getSeekTime()
     void                    addStartCallback(SoXtViewerCB *f, void *userData = NULL)
     void                    addFinishCallback(SoXtViewerCB *f, void *userData = NULL)
     void                    removeStartCallback(SoXtViewerCB *f, void *userData = NULL)
     void                    removeFinishCallback(SoXtViewerCB *f, void *userData = NULL)
     void                    copyView(Time eventTime)
     void                    pasteView(Time eventTime)
     virtual void            recomputeSceneSize()

          Methods from class SoXtRenderArea:

     virtual void              setSceneGraph(SoNode *newScene)
     virtual SoNode *          getSceneGraph()
     void                      setOverlaySceneGraph(SoNode *newScene)
     SoNode *                  getOverlaySceneGraph()
     void                      registerDevice(SoXtDevice *)
     void                      unregisterDevice(SoXtDevice *)
     void                      setBackgroundColor(const SbColor &c)
     const SbColor &           getBackgroundColor() const
     void                      setBackgroundIndex(int index)
     int                       getBackgroundIndex() const
     void                      setOverlayBackgroundIndex(int index)
     int                       getOverlayBackgroundIndex() const
     void                      setColorMap(int startIndex, int num, const SbColor *colors)
     void                      setOverlayColorMap(int startIndex, int num, const SbColor *colors)
     void                      setViewportRegion(const SbViewportRegion &newRegion)
     const SbViewportRegion &  getViewportRegion() const
     void                      setTransparencyType(SoGLRenderAction::TransparencyType type)
     SoGLRenderAction::TransparencyType
                               getTransparencyType() const
     void                      setAntialiasing(SbBool smoothing, int numPasses)
     void                      getAntialiasing(SbBool &smoothing, int &numPasses) const
     void                      setClearBeforeRender(SbBool trueOrFalse)
     SbBool                    isClearBeforeRender() const
     void                      setClearBeforeOverlayRender(SbBool trueOrFalse)
     SbBool                    isClearBeforeOverlayRender() const
     void                      setAutoRedraw(SbBool trueOrFalse)
     SbBool                    isAutoRedraw() const
     void                      setRedrawPriority(uint32_t priority)
     uint32_t                  getRedrawPriority() const
     static uint32_t           getDefaultRedrawPriority()
     void                      render()
     void                      renderOverlay()
     void                      scheduleRedraw()
     void                      scheduleOverlayRedraw()
     void                      redrawOnSelectionChange(SoSelection *s)
     void                      redrawOverlayOnSelectionChange(SoSelection *s)
     void                      setEventCallback(SoXtRenderAreaEventCB  *fcn,  void  *userData   =
                                    NULL)
     void                      setGLRenderAction(SoGLRenderAction *ra)
     SoGLRenderAction *        getGLRenderAction() const
     void                      setOverlayGLRenderAction(SoGLRenderAction *ra)
     SoGLRenderAction *        getOverlayGLRenderAction() const
     void                      setSceneManager(SoSceneManager *sm)
     SoSceneManager *          getSceneManager() const
     void                      setOverlaySceneManager(SoSceneManager *sm)
     SoSceneManager *          getOverlaySceneManager() const

          Methods from class SoXtGLWidget:

     void                setBorder(SbBool onOrOff)
     SbBool              isBorder() const
     virtual void        setDoubleBuffer(SbBool onOrOff)
     SbBool              isDoubleBuffer()
     Window              getNormalWindow()
     Window              getOverlayWindow()
     GLXContext          getNormalContext()
     GLXContext          getOverlayContext()
     Widget              getNormalWidget()
     Widget              getOverlayWidget()
     virtual void        setNormalVisual(XVisualInfo *vis)
     XVisualInfo *       getNormalVisual()
     virtual void        setOverlayVisual(XVisualInfo *vis)
     XVisualInfo *       getOverlayVisual()
     void                setDrawToFrontBufferEnable(SbBool enableFlag)
     SbBool              isDrawToFrontBufferEnable() const

          Methods from class SoXtComponent:

     virtual void            show()
     virtual void            hide()
     SbBool                  isVisible()
     Widget                  getWidget() const
     SbBool                  isTopLevelShell() const
     Widget                  getShellWidget() const
     Widget                  getParentWidget() const
     void                    setSize(const SbVec2s &size)
     SbVec2s                 getSize()
     Display *               getDisplay()
     void                    setTitle(const char *newTitle)
     const char *            getTitle() const
     void                    setIconTitle(const char *newIconTitle)
     const char *            getIconTitle() const
     void                    setWindowCloseCallback(SoXtComponentCB *func, void *data = NULL)
     static SoXtComponent *  getComponent(Widget w)
     const char *            getWidgetName() const
     const char *            getClassName() const

DESCRIPTION

       Fly  Viewer  —  this  viewer is intended to simulate flight through space, with a constant
       world up direction. The viewer only constrains the camera to keep  the  user  from  flying
       upside  down.  No  mouse buttons need to be pressed in order to fly. The mouse position is
       used only for steering, while mouse clicks are used to increase  or  decrease  the  viewer
       speed.

       The  viewer  allows you to tilt your head up/down/right/left and move in the direction you
       are looking (forward or backward). The viewer also  supports  seek  to  quickly  move  the
       camera to a desired object or point.

METHODS

                         SoXtFlyViewer(Widget  parent  =  NULL,  const  char *name = NULL, SbBool
                              buildInsideParent  =   TRUE,   SoXtFullViewer::BuildFlag   flag   =
                              BUILD_ALL, SoXtViewer::Type type = BROWSER)
                         ~SoXtFlyViewer()
          Constructor  and  destructor  which  specifies  the  viewer  type.  Please refer to the
          SoXtViewer reference page for a description of the viewer types.

RESOURCES

          *SoXtFlyViewer.decoration: on (on | off)
          *SoXtFlyViewer.seekAnimationTime: 2.0 (float)
          *SoXtFlyViewer.seekTo: point (point | object)
          *SoXtFlyViewer.seekDistanceUsage: percentage (percentage | absolute)
          *SoXtFlyViewer.zoomMin: 1.0 (float)
          *SoXtFlyViewer.zoomMax: 179.0 (float)
          *SoXtFlyViewer.autoClipping: on (on | off)
          *SoXtFlyViewer.nearDistance: 2.4 (float, when autoClipping is off)
          *SoXtFlyViewer.farDistance: 2.8 (float, when autoClipping is off)
          *SoXtFlyViewer*BackgroundColor: black (color name or hex value)

USAGE

       Left Mouse: Click to increase speed.

       <s> + Left Mouse: Alternative to the Seek button. Press (but do not  hold  down)  the  <s>
       key, then click on a target object.

       <u>  + Left Mouse: Press (but do not hold down) the <u> key, then click on a target object
       to set the "up" direction to the surface normal. By default +y is the "up" direction.

       Middle Mouse: Click to decrease speed.

       Left and Middle Mouse: Click boths simultaneously to stop.

       Ctrl: Hold the key down to temporary stop and rotate the viewpoint.

       Right Mouse: Open the popup menu.

SEE ALSO

       SoXtFullViewer,     SoXtViewer,     SoXtComponent,     SoXtRenderArea,     SoXtWalkViewer,
       SoXtExaminerViewer, SoXtPlaneViewer

                                                                             SoXtFlyViewer(3IV)()