logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SoXtWalkViewer — viewer component which moves the camera in a plane

Description

       The paradigm for this viewer is a walkthrough of an architectural model. Its primary behavior is forward,
       backward, and left/right turning motion while maintaining a constant "eye level". It is also possible  to
       stop and look around at the scene. The eye level plane can be disabled, allowing the viewer to proceed in
       the  "look at" direction, as if on an escalator. The eye level plane can also be translated up and down —
       similar to an elevator.

Inherits From

       SoXtComponent  >  SoXtGLWidget  >  SoXtRenderArea > SoXtViewer > SoXtFullViewer > SoXtConstrainedViewer >
       SoXtWalkViewer

Methods

SoXtWalkViewer(Widgetparent=NULL,constchar*name=NULL,SbBoolbuildInsideParent=TRUE,SoXtFullViewer::BuildFlagflag=BUILD_ALL,SoXtViewer::Typetype=BROWSER)~SoXtWalkViewer()
          Constructor and destructor which specifies the viewer type. Please refer to the SoXtViewer  man  pages
          for a description of the viewer types.

Name

       SoXtWalkViewer — viewer component which moves the camera in a plane

Resources

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

See Also

SoXtFullViewer,SoXtViewer,SoXtComponent,SoXtRenderArea,SoXtPlaneViewer,SoXtExaminerViewer,SoXtFlyViewerSoXtWalkViewer(3IV)()

Synopsis

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

          Methods from class SoXtWalkViewer:

                         SoXtWalkViewer(Widgetparent=NULL,constchar*name=NULL,SbBoolbuildInsideParent=TRUE,SoXtFullViewer::BuildFlagflag=BUILD_ALL,SoXtViewer::Typetype=BROWSER)~SoXtWalkViewer()

          Methods from class SoXtConstrainedViewer:

     voidsetUpDirection(constSbVec3f&newUpDirection)SbVec3fgetUpDirection()

          Methods from class SoXtFullViewer:

     voidsetDecoration(SbBoolonOrOff)SbBoolisDecoration()voidsetPopupMenuEnabled(SbBooltrueOrFalse)SbBoolisPopupMenuEnabled()WidgetgetAppPushButtonParent()constvoidaddAppPushButton(WidgetnewButton)voidinsertAppPushButton(WidgetnewButton,intindex)voidremoveAppPushButton(WidgetoldButton)intfindAppPushButton(WidgetoldButton)intlengthAppPushButton()WidgetgetRenderAreaWidget()

          Methods from class SoXtViewer:

     virtualvoidsetCamera(SoCamera*cam)SoCamera*getCamera()virtualvoidsetCameraType(SoTypetype)SoTypegetCameraType()virtualvoidviewAll()virtualvoidsaveHomePosition()virtualvoidresetToHomePosition()virtualvoidsetHeadlight(SbBoolonOrOff)SbBoolisHeadlight()SoDirectionalLight*getHeadlight()virtualvoidsetDrawStyle(SoXtViewer::DrawTypetype,SoXtViewer::DrawStylestyle)SoXtViewer::DrawStylegetDrawStyle(SoXtViewer::DrawTypetype)virtualvoidsetBufferingType(SoXtViewer::BufferTypetype)SoXtViewer::BufferTypegetBufferingType()virtualvoidsetViewing(SbBoolonOrOff)SbBoolisViewing()constvirtualvoidsetCursorEnabled(SbBoolonOrOff)SbBoolisCursorEnabled()constvoidsetAutoClipping(SbBoolonOrOff)SbBoolisAutoClipping()constvirtualvoidsetStereoViewing(SbBoolonOrOff)virtualSbBoolisStereoViewing()voidsetStereoOffset(floatdist)floatgetStereoOffset()voidsetDetailSeek(SbBoolonOrOff)SbBoolisDetailSeek()voidsetSeekTime(floatseconds)floatgetSeekTime()voidaddStartCallback(SoXtViewerCB*f,void*userData=NULL)voidaddFinishCallback(SoXtViewerCB*f,void*userData=NULL)voidremoveStartCallback(SoXtViewerCB*f,void*userData=NULL)voidremoveFinishCallback(SoXtViewerCB*f,void*userData=NULL)voidcopyView(TimeeventTime)voidpasteView(TimeeventTime)virtualvoidrecomputeSceneSize()

          Methods from class SoXtRenderArea:

     virtualvoidsetSceneGraph(SoNode*newScene)virtualSoNode*getSceneGraph()voidsetOverlaySceneGraph(SoNode*newScene)SoNode*getOverlaySceneGraph()voidregisterDevice(SoXtDevice*)voidunregisterDevice(SoXtDevice*)voidsetBackgroundColor(constSbColor&c)constSbColor&getBackgroundColor()constvoidsetBackgroundIndex(intindex)intgetBackgroundIndex()constvoidsetOverlayBackgroundIndex(intindex)intgetOverlayBackgroundIndex()constvoidsetColorMap(intstartIndex,intnum,constSbColor*colors)voidsetOverlayColorMap(intstartIndex,intnum,constSbColor*colors)voidsetViewportRegion(constSbViewportRegion&newRegion)constSbViewportRegion&getViewportRegion()constvoidsetTransparencyType(SoGLRenderAction::TransparencyTypetype)SoGLRenderAction::TransparencyTypegetTransparencyType()constvoidsetAntialiasing(SbBoolsmoothing,intnumPasses)voidgetAntialiasing(SbBool&smoothing,int&numPasses)constvoidsetClearBeforeRender(SbBooltrueOrFalse)SbBoolisClearBeforeRender()constvoidsetClearBeforeOverlayRender(SbBooltrueOrFalse)SbBoolisClearBeforeOverlayRender()constvoidsetAutoRedraw(SbBooltrueOrFalse)SbBoolisAutoRedraw()constvoidsetRedrawPriority(uint32_tpriority)uint32_tgetRedrawPriority()conststaticuint32_tgetDefaultRedrawPriority()voidrender()voidrenderOverlay()voidscheduleRedraw()voidscheduleOverlayRedraw()voidredrawOnSelectionChange(SoSelection*s)voidredrawOverlayOnSelectionChange(SoSelection*s)voidsetEventCallback(SoXtRenderAreaEventCB*fcn,void*userData=NULL)voidsetGLRenderAction(SoGLRenderAction*ra)SoGLRenderAction*getGLRenderAction()constvoidsetOverlayGLRenderAction(SoGLRenderAction*ra)SoGLRenderAction*getOverlayGLRenderAction()constvoidsetSceneManager(SoSceneManager*sm)SoSceneManager*getSceneManager()constvoidsetOverlaySceneManager(SoSceneManager*sm)SoSceneManager*getOverlaySceneManager()const

          Methods from class SoXtGLWidget:

     voidsetBorder(SbBoolonOrOff)SbBoolisBorder()constvirtualvoidsetDoubleBuffer(SbBoolonOrOff)SbBoolisDoubleBuffer()WindowgetNormalWindow()WindowgetOverlayWindow()GLXContextgetNormalContext()GLXContextgetOverlayContext()WidgetgetNormalWidget()WidgetgetOverlayWidget()virtualvoidsetNormalVisual(XVisualInfo*vis)XVisualInfo*getNormalVisual()virtualvoidsetOverlayVisual(XVisualInfo*vis)XVisualInfo*getOverlayVisual()voidsetDrawToFrontBufferEnable(SbBoolenableFlag)SbBoolisDrawToFrontBufferEnable()const

          Methods from class SoXtComponent:

     virtualvoidshow()virtualvoidhide()SbBoolisVisible()WidgetgetWidget()constSbBoolisTopLevelShell()constWidgetgetShellWidget()constWidgetgetParentWidget()constvoidsetSize(constSbVec2s&size)SbVec2sgetSize()Display*getDisplay()voidsetTitle(constchar*newTitle)constchar*getTitle()constvoidsetIconTitle(constchar*newIconTitle)constchar*getIconTitle()constvoidsetWindowCloseCallback(SoXtComponentCB*func,void*data=NULL)staticSoXtComponent*getComponent(Widgetw)constchar*getWidgetName()constconstchar*getClassName()const

Usage

LeftMouse: walk mode. Click down and move up/down for fowards/backwards motion. Move right and left for
       turning. Speed increases exponentially with the distance from the mouse-down origin.

       MiddleMouse - or

       Ctrl+LeftMouse: Translate up, down, left and right.

       Ctrl+MiddleMouse: tilt the camera up/down and  right/left.  This  allows  you  to  look  around  while
       stopped.

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

       <u>+click: 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.

       RightMouse: Open the popup menu.

See Also