SoXtFlyViewer(3IV)

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