Viewer component which moves the camera in a plane. More...
#include <Inventor/Win/viewers/SoWinWalkViewer.h>
Public Member Functions | |
SoWinWalkViewer (SoWidget parent=NULL, const char *name=NULL, SbBool buildInsideParent=TRUE, SoWinFullViewer::BuildFlag flag=SoWinFullViewer::BUILD_ALL, SoWinViewer::Type type=SoWinViewer::BROWSER) | |
Constructor which specifies the viewer type. | |
~SoWinWalkViewer () | |
Destructor. | |
virtual void | setViewing (SbBool onOrOff) |
Sets whether the viewer is turned on or off. | |
virtual void | setCamera (SoCamera *cam) |
Sets the camera that will be controlled by the viewer. | |
virtual void | setCursorEnabled (SbBool onOrOff) |
Sets whether the viewer is allowed to change the cursor over the renderArea window. | |
virtual void | setCameraType (SoType type) |
Sets the camera type that will be created by the viewer if no cameras are found in the scene graph (see SoPerspectiveCamera and SoOrthographicCamera). | |
void | setViewerSpeed (float speed) |
Set viewer speed multiplier (default is 1). | |
float | getViewerSpeed () const |
Get viewer speed multiplier. | |
virtual void | setSeekMode (SbBool onOrOff) |
Externally set the viewer into/out off seek mode (default OFF). | |
Public Member Functions inherited from SoWinConstrainedViewer | |
void | setUpDirection (const SbVec3f &newUpDirection) |
Specifies the upward direction of the viewer. | |
SbVec3f | getUpDirection () |
Returns the upward direction of the viewer. | |
virtual void | saveHomePosition () |
Saves the camera values. | |
virtual void | resetToHomePosition () |
Restores the camera values. | |
virtual void | recomputeSceneSize () |
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. | |
Public Member Functions inherited from SoWinFullViewer | |
void | setDecoration (SbBool onOrOff) |
Shows/hides the viewer component trim (default on). | |
SbBool | isDecoration () |
Returns whether the viewer component trim is on or off. | |
void | setPopupMenuEnabled (SbBool trueOrFalse) |
Enables/disables the viewer popup menu (default enabled). | |
SbBool | isPopupMenuEnabled () |
Returns whether the viewer popup menu is enabled or disabled. | |
void | setClientPopupMenu (Hmenu hmenu) |
Enables application-specific popup menu. | |
SbBool | isClientPopupMenuInstalled () |
Returns TRUE if an application-specific popup menu is installed. | |
SoWidget | getAppPushButtonParent () const |
Returns application push button parent. | |
void | addAppPushButton (SoWidget newButton) |
Adds application push button, which will be placed in the left hand side decoration trim. | |
void | insertAppPushButton (SoWidget newButton, int index) |
Adds application push button, which will be placed in the left hand side decoration trim. | |
void | removeAppPushButton (SoWidget oldButton) |
Removes specified application push button. | |
int | findAppPushButton (SoWidget oldButton) |
Returns index of specified push button. | |
int | lengthAppPushButton () |
Returns number of application push buttons. | |
SoWidget | getRenderAreaWidget () |
Returns the render area window handle. | |
virtual void | hide () |
This hides the component. | |
SoStereoDialog * | getStereoDialog () |
void | setStereoDialog (SoStereoDialog *newDialog) |
void | addPushAppButtonCallback (PushAppButtonCB *cb, void *data=NULL) |
void | addRedrawAppButtonCallback (RedrawAppButtonCB *cb, void *data=NULL) |
Public Member Functions inherited from SoWinViewer | |
virtual void | setSceneGraph (SoNode *newScene) |
Sets the scene graph to render. | |
virtual SoNode * | getSceneGraph () |
Gets the scene graph to be rendered in this component's window. | |
SoCamera * | getCamera () |
Gets the camera controlled by the viewer. | |
SoType | getCameraType () |
Gets the camera type that will be created by the viewer if no cameras are found in the scene graph (see SoPerspectiveCamera and SoOrthographicCamera). | |
virtual void | setPreserveCameraHeightAngle (SbBool flag) |
If TRUE, an SoPerspectiveCamera's heightAngle is preserved if the camera is changed to an SoOrthographicCamera and then toggled back to an SoPerspectiveCamera. | |
virtual SbBool | isCameraHeightAnglePreserved () const |
Query whether the SoPerspectiveCamera's heightAngle is preserved if the camera is changed to an SoOrthographicCamera and then toggled back to an SoPerspectiveCamera. | |
virtual void | enableSeekWithOrtho (SbBool flag) |
If FALSE, the seek functionality is disabled for an SoOrthographicCamera. | |
virtual SbBool | isSeekWithOrthoEnabled () const |
Query whether the seek functionality is enabled for an SoOrthographicCamera. | |
virtual void | viewAll () |
Changes the camera position to view the entire scene (the camera zoom or orientation isn't changed). | |
void | setCameraTypeChangeCallback (SoWinViewerCameraTypeChangeCB *callback, void *userdata) |
Defines a callback which is called each time the camera type has changed (change from SoPerspectiveCamera to SoOrthographicCamera or vice versa). | |
void | setHeadlight (SbBool onOrOff) |
Turns the headlight on/off (default on). | |
SbBool | isHeadlight () |
Queries if the headlight is on. | |
SoDirectionalLight * | getHeadlight () |
Returns the headlight node. | |
void | setDrawStyle (SoWinViewer::DrawType type, SoWinViewer::DrawStyle style) |
Sets the current drawing style in the main view. | |
SoWinViewer::DrawStyle | getDrawStyle (SoWinViewer::DrawType type) |
Queries the current drawing style in the main view. | |
void | setBufferingType (SoWinViewer::BufferType type) |
Sets the current buffering type in the main view (default SoWinViewer::BUFFER_DOUBLE). | |
SoWinViewer::BufferType | getBufferingType () |
Gets the current buffering type in the main view. | |
SbBool | isViewing () const |
Queries whether the viewer is turned on or off. | |
SbBool | isSeekMode () |
Queries whether the seek mode is active. | |
SbBool | isCursorEnabled () const |
Queries whether the viewer is allowed to change the cursor over the renderArea window. | |
void | setAutoClipping (SbBool onOrOff) |
Sets the auto clipping plane. | |
SbBool | isAutoClipping () const |
Queries if auto clipping is ON. | |
virtual void | setStereoViewing (SbBool onOrOff) |
Turns stereo viewing on/off on the viewer (default off). | |
virtual SbBool | isStereoViewing () |
Queries if stereo viewing is on or off on the viewer. | |
void | setStereoOffset (float dist) |
Sets the stereo offset. | |
float | getStereoOffset () |
Returns the stereo offset. | |
void | setDetailSeek (SbBool onOrOff) |
When the viewer is in seek mode, left mouse clicks initiate a pick, and the viewer changes its orientation and position to look at the picked object. | |
SbBool | isDetailSeek () |
Queries whether detail seek is on. | |
void | setSeekTime (float seconds) |
Sets the time a seek takes to change to the new camera location. | |
float | getSeekTime () |
Queries the seek time. | |
void | addStartCallback (SoWinViewerCB *f, void *userData=NULL) |
Adds start callback routine on the viewer. | |
void | addFinishCallback (SoWinViewerCB *f, void *userData=NULL) |
Adds finish callback routine on the viewer. | |
void | removeStartCallback (SoWinViewerCB *f, void *userData=NULL) |
Removes start callback routine from the viewer. | |
void | removeFinishCallback (SoWinViewerCB *f, void *userData=NULL) |
Removes finish callback routine from the viewer. | |
void | copyView (Time eventTime) |
Copies the view. | |
void | pasteView (Time eventTime) |
Pastes the view. | |
virtual void | setNormalVisual (XVisualInfo *i) |
Specifies the exact pixel format descriptor for the normal window. | |
void | setDecimationStrategy (SoWinViewer::DecimationStrategy strategy) |
Sets strategy to use to decide on decimation value. | |
SoWinViewer::DecimationStrategy | getDecimationStrategy () |
Gets strategy to use to decide on decimation value. | |
void | setGoalNumberOfTriangles (int32_t goal) |
Sets goal number of triangles for the viewer to try to render. | |
int32_t | getGoalNumberOfTriangles () |
Gets goal number of triangles for the viewer to try to render. | |
void | setGoalFramesPerSecond (float goal) |
Sets goal frames per second for the viewer to try to render. | |
float | getGoalFramesPerSecond () |
Gets goal frames per second for the viewer to try to render. | |
void | setFixedPercentage (float percent) |
Sets fixed percentage for the viewer to render (0.0 to 1.0) Default is 1.0. | |
float | getFixedPercentage () |
Gets fixed percentage for the viewer to render (0.0 to 1.0) | |
void | enableFullRenderingWhenStill (SbBool onOff) |
If this flag is set, the viewer will render at full resolution when it sits still for a certain period of time. | |
SbBool | isFullRenderingWhenStill () |
Queries if the viewer will render at full resolution when it sits still for a certain period of time. | |
SbBool | isStillNow () |
Returns whether the viewer is currently still. | |
void | setFramesPerSecondCallback (SoWinViewerFPSCB *callback, void *userData=NULL) |
Registers frames per second callback. | |
void | setNumSamples (int numFrames) |
Sets how many frames should be timed before frames per second callback is called, default is 10. | |
int | getNumSamples () |
Gets how many frames should be timed before frames per second callback is called. | |
void | setDecimationPercentageCallback (SoWinViewerDecimationPercentageCB *callback, void *userData=NULL) |
Registers decimation percentage callback. | |
float | getCurrentDecimationPercentage () |
Returns the Decimation Percentage the viewer used in its last render. | |
void | enableMouseWheelDolly (SbBool onOff) |
Enable/disable moving the camera with the mouse wheel, TRUE by default. | |
void | setPickRadius (float radius) |
Sets the pick radius, in pixels, used by the viewer for picking and seeking actions. | |
float | getPickRadius () const |
Returns the current pick radius for picking and seeking actions. | |
virtual SoCamera * | getViewerCamera () |
Returns the camera so SoBaseStereo can manipulate it to achieve the stereo effect. | |
virtual SbBool | isViewerDoubleBuffer () |
Returns TRUE if viewer is double buffered. | |
virtual void | actualRendering () |
This method is called automatically when the viewer requests that its SoBaseStereo object perform stereo rendering. | |
virtual const SbVec2s & | getSize () |
Returns the size of the OpenGL drawing window in absolute screen coordinates (not relative to parent window) of the native window system (typically Y increasing downward). | |
virtual const SbVec2s & | getTopLeft () |
Returns the position of the OpenGL drawing window in absolute screen coordinates (not relative to parent window) of the native window system (typically Y increasing downward). | |
virtual const SbVec2s & | getBottomRight () |
Returns the position of the OpenGL drawing window in absolute screen coordinates (not relative to parent window) of the native window system (typically Y increasing downward). | |
void | setStereoViewType (SoBaseStereo *stereo) |
Set an implementation of stereo viewing to use. | |
SoBaseStereo * | getStereoViewType () |
Returns the current stereo implementation. | |
void | reverseStereoView (SbBool reverse) |
If TRUE, reverse the left and right eye views. | |
SbBool | isStereoViewReversed () |
Returns TRUE if the left and right eye views are reversed. | |
virtual void | setStereoAbsoluteAdjustments (SbBool absolute) |
If TRUE, use stereo absolute adjustments. | |
virtual SbBool | isStereoAbsoluteAdjustments () const |
Returns TRUE if stereo absolute adjustments are enabled. | |
virtual void | setStereoBalance (float balance, SbBool nearFrac=false) |
Sets the stereo balance (the position of the zero parallax plane). | |
virtual float | getStereoBalance () |
Returns the current stereo balance. | |
virtual SbBool | isStereoBalanceNearFrac () |
Returns TRUE if the stereo balance adjustement is defined as a fraction of the camera near distance. | |
virtual void | setStereoActive (SbBool activate) |
If TRUE, stero is activated. | |
virtual SbBool | isStereoActive () |
Returns TRUE if stereo is active. | |
void | setViewport (short left, short bottom, short width, short height) |
Sets viewport region with given origin (lower-left corner) and size, given as pixel coordinates. | |
void | getViewport (short &left, short &bottom, short &width, short &height) |
Returns viewport region as origin (lower-left corner) and size, given as pixel coordinates. | |
virtual void | setCursorStyle (SoWinViewer::CursorStyle style) |
Sets the cursor style. | |
SoWinViewer::CursorStyle | getCursorStyle () |
Returns the cursor style. | |
void | setAutoClipTolerance (float tolerance) |
Sets the auto clipping tolerance value. | |
float | getAutoClipTolerance () const |
Returns the auto clipping tolerance value. | |
virtual void | setCameraSceneGraph (SoNode *cameraSceneGraph) |
Sets the sub-scene graph to be used for viewAll computation. | |
SoNode * | getCameraSceneGraph () |
Gets the sub-scene graph to be viewed. | |
virtual void | toggleCameraType () |
This routine will toggle the current camera from perspective to orthographic, and from orthographic back to perspective. | |
SbBool | getDepthValue (int x, int y, float &depth) |
Returns the depth value, scaled between 0.0 and 1.0, from the depth buffer at window coordinates x, y. | |
virtual SoDEPRECATED void | adjustClippingPlanes () |
Along with the manipulation of the camera, SoBaseStereo needs to set the scene appropriately when changing the camera settings. | |
Public Member Functions inherited from SoWinRenderArea | |
SoWinRenderArea (SoWidget parent=NULL, const char *name=NULL, SbBool buildInsideParent=TRUE, SbBool getMouseInput=TRUE, SbBool getKeyboardInput=TRUE) | |
Constructor which is passed arguments which tell it whether to register the mouse and keyboard devices by default (SoWinMouse and SoWinKeyboard). | |
~SoWinRenderArea () | |
Destructor. | |
void | registerDevice (SoWinDevice *d) |
Registers interest in devices. | |
void | unregisterDevice (SoWinDevice *d) |
Unregisters interest in devices. | |
void | setBackgroundColor (const SbColor &c) |
Sets the background color for this window. | |
SbColor | getBackgroundColor () const |
Gets the background color for this window. | |
void | setBackgroundIndex (int index) |
Sets the window background color when in color index mode. | |
int | getBackgroundIndex () const |
Gets the window background color when in color index mode. | |
void | setColorMap (int startIndex, int num, const SbColor *colors) |
Sets the colors to use when displaying in color index mode. | |
void | setViewportRegion (const SbViewportRegion &newRegion) |
Sets viewport region to use for rendering. | |
const SbViewportRegion & | getViewportRegion () const |
Gets current viewport region to use for rendering. | |
void | setTransparencyType (SoGLRenderAction::TransparencyType type) |
Sets the algorithm for rendering transparent objects. | |
SoGLRenderAction::TransparencyType | getTransparencyType () const |
Gets the algorithm for rendering transparent objects. | |
void | setFastEditSavePolicy (SoGLRenderAction::FastEditSavePolicy policy, SbBool fastEditDelayedObjects=FALSE) |
Sets fast editing save policy to use when rendering. | |
SoGLRenderAction::FastEditSavePolicy | getFastEditSavePolicy () const |
Returns fast editing save policy used when rendering. | |
void | setInvalidateCacheMode (SoGLRenderAction::InvalidateCacheMode icm) |
Enables or disables the invalidation of render caches. | |
SoGLRenderAction::InvalidateCacheMode | getInvalidateCacheMode () |
Returns the current cache invalidation mode. | |
void | setClearBeforeRender (SbBool trueOrFalse, SbBool zbTrueOrFalse=TRUE) |
Enables/prevents window clearing from happening before a rendering starts (default is clear TRUE). | |
SbBool | isClearBeforeRender () const |
Queries whether the window will be cleared before rendering starts. | |
SbBool | isClearZBufferBeforeRender () const |
Queries whether the depth buffer (sometimes called the Z buffer) will be cleared before rendering starts. | |
void | setAutoRedraw (SbBool trueOrFalse) |
The render area will automatically redraw whenever something in the scene graph changes. | |
SbBool | isAutoRedraw () const |
Queries whether the render area will automatically redraw whenever something in the scene graph changes. | |
void | setRedrawPriority (unsigned long priority) |
Sets the priority of the redraw sensor. | |
unsigned long | getRedrawPriority () const |
Gets the priority of the redraw sensor. | |
void | render () |
Calling this forces the render area to be redrawn now. | |
void | scheduleRedraw () |
Schedules a redraw to happen sometime soon (as opposed to immediately). | |
void | redrawOnSelectionChange (SoSelection *s) |
Call this convenience method to have this render area redraw whenever the selection list changes in the passed node. | |
void | setEventCallback (SoWinRenderAreaEventCB *fcn, void *userData=NULL) |
Windows messages which occur in the render area window are either directly handled by the viewer (when this is really a viewer) or automatically translated to SoEvents, then passed into the scene graph (via the SoHandleEventAction) so that live scene graph objects can handle the message (when viewers are not in viewing mode). | |
void | setSceneManager (SoSceneManager *sm) |
Sets the normal scene manager. | |
SoSceneManager * | getSceneManager () const |
Gets the normal scene manager. | |
void | setGLRenderAction (SoGLRenderAction *ra) |
Sets the GL render action to use. | |
SoGLRenderAction * | getGLRenderAction () const |
Gets the current GL render action. | |
const SbGLShareContext | getShareContext () |
Returns the information needed to make OpenGL render contexts share OpenGL objects, for example, display lists and texture objects. | |
void | setPostRenderCallback (SoWinRenderAreaRenderCB *fcn, void *userData=NULL) |
Specifies a function to be called after the Open Inventor render traversal and immediately before the OpenGL buffer swap. | |
SoWinRenderAreaRenderCB * | getPostRenderCallback (const void *&userData) const |
Gets the post-render callback function and data. | |
void | setFloatingColorBuffer (SbBool enable, FloatColorBufferSize size=FLOAT_16_COLOR_BUFFER) |
Enables/disables floating point rendering using 16- or 32-bit components. | |
void | getFloatingColorBuffer (SbBool &enable, FloatColorBufferSize &size) |
Returns TRUE if floating point rendering is used and its precision. | |
void | sendEvent (XAnyEvent *anEvent) |
Sends the event to be processed by the renderArea. | |
virtual void | setMPEGRecorder (SoMPEGRenderer *recorder) |
Sets the recorder used for MPEG encoding. | |
virtual SoMPEGRenderer * | getMPEGRecorder () const |
Returns the recorder used for MPEG encoding. | |
Public Member Functions inherited from SoWinGLWidget | |
virtual Window | getNormalWindow () |
Gets the normal GL window, which is needed as an argument to SbGlContextHelper::makeCurrent() when drawing in the normal planes. | |
GLXContext | getNormalContext () |
Gets the normal context, which is needed as an argument to SbGlContextHelper::makeCurrent() when drawing in the normal planes. | |
virtual SoGLContext * | getNormalSoContext () |
Hdc | getNormalDC () const |
Returns the device context (which is needed for SbGlContextHelper::makeCurrent). | |
void | setStealFocus (SbBool onOrOff) |
By default the GLWidget "steals" focus whenever the cursor moves over it. | |
SoWidget | getNormalWidget () const |
Gets the normal window handle, which is needed as an argument to SbGlContextHelper::makeCurrent() when drawing in the normal planes. | |
XVisualInfo * | getNormalVisual () |
Returns the pixel format descriptor for the normal window. | |
virtual void | setPixelFormat (int format) |
Sets the current pixel format. | |
int | getPixelFormat () |
Returns the current pixel format. | |
void | setAntialiasing (const float quality, const SoSceneManager::AntialiasingMode mode=SoSceneManager::AUTO) |
Enable (or disable) antialiasing with specified quality and mode. | |
void | setAntialiasing (SoAntialiasingParameters *advancedParameters) |
Enable (or disable) antialiasing with specific parameters. | |
float | getAntialiasingQuality () const |
Returns the antialiasing quality set using the setAntialiasing(float,AntialiasingMode) method. | |
SoSceneManager::AntialiasingMode | getAntialiasingMode () const |
Returns the antialiasing mode set using the setAntialiasing(float,AntialiasingMode) method. | |
SoAntialiasingParameters * | getAntialiasingParameters () const |
Returns the antialiasing parameters set using the setAntialiasing(SoAntialiasingParameters*) method. | |
void | setDoubleBuffer (SbBool onOrOff) |
Routine that dynamically changes between single and double buffering. | |
SbBool | isDoubleBuffer () |
Returns whether double buffering is on or off. | |
void | setBorder (SbBool onOrOff) |
Included for portability only. | |
int | getBorderSize () |
Included for portability only. | |
SbBool | isBorder () const |
Included for portability only. | |
void | setDrawToFrontBufferEnable (SbBool enableFlag) |
Sets drawing to the front buffer. | |
SbBool | isDrawToFrontBufferEnable () const |
Returns whether drawing to the front buffer is enabled. | |
void | setCursor (Cursor newCursor) |
Sets the current cursor. | |
Cursor | getCursor () |
Returns the current cursor. | |
virtual SbBool | bindNormalContext () |
Makes the normal rendering context the current context. | |
virtual SbBool | unbindNormalContext () |
unbind the current context (previously bind with bindNormalContext ); | |
virtual SbBool | swapNormalBuffers () |
Swaps the normal front and back buffers. | |
SoGLGraphicConfigTemplate * | getGraphicConfigTemplate () |
Gets the current graphics configuration template. | |
void | setGraphicConfigTemplate (SoGLGraphicConfigTemplate *gTemplate) |
Sets a new graphics configuration template. | |
bool | saveSnapshot (const SbString &filename, bool overwrite=true) |
Save a snapshot of the current image displayed in the viewer. | |
Public Member Functions inherited from SoWinComponent | |
virtual void | show () |
This shows the component. | |
SbBool | isVisible () |
Returns TRUE if this component is mapped onto the screen. | |
SoWidget | getWidget () const |
This returns the base window handle for this component. | |
SbBool | isTopLevelShell () const |
Returns TRUE if this component is a top level shell component (has its own window). | |
SoWidget | getShellWidget () const |
Returns the shell window handle (NULL if the shell hasn't been created by this component). | |
SoWidget | getParentWidget () const |
Returns the parent window handle, be it a shell or not. | |
void | setSize (const SbVec2s &size) |
Convenience routine on the window handle. | |
SbVec2s | getSize () |
Convenience routine on the window handle. | |
SbBool | setFullScreen (const SbBool enable) |
Switches the viewer into (or out of) fullscreen mode. | |
SbBool | isFullScreen () const |
Queries if the viewer is in fullscreen mode. | |
void | setFullScreenEnable (const SbBool enable) |
Enables/disables fullscreen mode. | |
SbBool | isFullScreenEnable (void) const |
Queries if it is possible to put the viewer in fullscreen mode. | |
UINT * | getDisplay () |
Included for portability only. | |
SoNONUNICODE void | setTitle (const char *newTitle) |
Sets window title. | |
void | setTitle (const SbString &newTitle) |
Sets window title. | |
SbString | getTitle () const |
Gets window title. | |
SoNONUNICODE void | setIconTitle (const char *newIconTitle) |
Included for portability only. | |
void | setIconTitle (const SbString &newIconTitle) |
Included for portability only. | |
SbString | getIconTitle () const |
Included for portability only. | |
void | setWindowCloseCallback (SoWinComponentCB *func, void *data=NULL) |
Sets which callback to call when the user closes this component (double click in the upper left corner) - by default hide() is called on this component, unless a callback is specified. | |
SbString | getWidgetName () const |
Returns the window handle name. | |
SbString | getClassName () const |
Returns the class name. | |
virtual | ~SoWinComponent () |
Destructor. | |
Public Member Functions inherited from SoStereoViewer | |
virtual | ~SoStereoViewer () |
Destructor. | |
Additional Inherited Members | |
Public Types inherited from SoWinFullViewer | |
enum | BuildFlag { BUILD_NONE = 0x00 , BUILD_DECORATION = 0x01 , BUILD_POPUP = 0x02 , BUILD_ALL = 0xff } |
This specifies what should be build by default in the constructor. More... | |
typedef void | PushAppButtonCB(SoWidget w, int id, void *pushData, void *userData) |
typedef void | RedrawAppButtonCB(LPDRAWITEMSTRUCT lpdis, void *userData) |
Public Types inherited from SoWinViewer | |
enum | Type { BROWSER , EDITOR } |
An EDITOR viewer will create a camera under the user supplied scene graph (specified in setSceneGraph()) if it cannot find one in the scene and will leave the camera behind when supplied with a new scene. More... | |
enum | DrawStyle { VIEW_AS_IS , VIEW_HIDDEN_LINE , VIEW_NO_TEXTURE , VIEW_LOW_COMPLEXITY , VIEW_LINE , VIEW_POINT , VIEW_BBOX , VIEW_LOW_RES_LINE , VIEW_LOW_RES_POINT , VIEW_SAME_AS_STILL } |
list of possible drawing styles More... | |
enum | DrawType { STILL , INTERACTIVE } |
DrawType. More... | |
enum | BufferType { BUFFER_SINGLE , BUFFER_DOUBLE , BUFFER_INTERACTIVE } |
list of different buffering types More... | |
enum | DecimationStrategy { NORMAL , FIXED_NUM_TRIANGLES , FRAMES_PER_SECOND , FIXED_PERCENTAGE } |
list of decimation strategies More... | |
enum | CursorStyle { CLASSIC , XOR , SHADOW } |
Classic cursors are all white and tend to disappear over white geometry or white background. More... | |
typedef void | SoWinViewerCB(void *userData, SoWinViewer *viewer) |
typedef void | SoWinViewerCameraTypeChangeCB(void *userData, SoCamera *camera, SoWinViewer *viewer) |
typedef void | SoWinViewerFPSCB(float fps, void *userData, SoWinViewer *viewer) |
Large Model Viewing notification callbacks for frames per second and decimation percentage. | |
typedef void | SoWinViewerDecimationPercentageCB(float percentage, void *userData, SoWinViewer *viewer) |
Public Types inherited from SoWinRenderArea | |
typedef SbBool | SoWinRenderAreaEventCB(void *userData, XAnyEvent *anyevent) |
typedef SbBool | SoWinRenderAreaRenderCB(void *userData, SoWinRenderArea *rendArea) |
Public Types inherited from SoWinGLWidget | |
enum | FloatColorBufferSize { FLOAT_16_COLOR_BUFFER = SoGuiGLWidget::FLOAT_16_COLOR_BUFFER , FLOAT_32_COLOR_BUFFER = SoGuiGLWidget::FLOAT_32_COLOR_BUFFER } |
FloatColorBufferSize. More... | |
Public Types inherited from SoWinComponent | |
typedef void | SoWinComponentCB(void *userData, SoWinComponent *comp) |
Static Public Member Functions inherited from SoWinFullViewer | |
static void | setDoButtonBar (SbBool onOrOff) |
Create the next instance of fullviewer w/wo the buttonbar. | |
static SbBool | isDoButtonBar () |
Returns whether the buttonbar is enabled or disabled. | |
Static Public Member Functions inherited from SoWinRenderArea | |
static unsigned long | getDefaultRedrawPriority () |
Gets the default priority number of the redraw sensor. | |
static SbBool | isFloatingColorBufferSupported () |
Returns TRUE if floating point rendering is available. | |
Static Public Member Functions inherited from SoWinComponent | |
SoDEPRECATED static SoNONUNICODE void | displayHelp (const char *filename, UINT contextID) |
Static method to display the specified topic of the specified help file. | |
static SoDEPRECATED void | displayHelp (const SbString &filename, UINT contextID) |
Static method to display the specified topic of the specified help file. | |
static SoWinComponent * | getComponent (SoWidget w) |
Returns the SoWinComponent for this window handle. | |
Public Attributes inherited from SoWinFullViewer | |
SoCallbackList | popupPostCallback |
The callbacks in this list will be invoked after the action selected from the viewer popup has been performed. | |
SoCallbackList | popupPreCallback |
The callbacks in this list are invoked immediately prior to display of the popup menu, regardless of whether it is the pre-defined viewer menu or a menu installed by the client application. | |
Hmenu | rootPopup |
Pointer to the popup menu container. | |
Hmenu | mainPopup |
Pointer to the root of the popup menu. | |
Hmenu | funcPopup |
Pointer to the Functions submenu. | |
Hmenu | drawPopup |
Pointer to the Draw Style submenu. | |
Hmenu | prefPopup |
Pointer to the Preferences submenu. | |
UINT | curPopupDrawItem |
In this version we track the currently "check marked" menu item in the Draw Style submenu (only one checked at a time). | |
UINT | curPopupMoveItem |
UINT | curPopupBufferItem |
Hmenu | hClientPopup |
Popup menu provided by a client (i.e. | |
Public Attributes inherited from SoWinComponent | |
SbString | helpFileName |
Name of help file to open when the viewer Help button is pressed. | |
UINT | helpContextID |
The context ID of the help topic to open when the viewer Help button is pressed. | |
SbString | helpContextString |
The TopicID of the help topic to open when the viewer Help button is pressed. | |
Viewer component which moves the camera in a plane.
The paradigm for this viewer is a walk-through 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.
Left Mouse: Walk mode. Click down and move up and down for fowards and backwards motion. Move right and left for turning. Speed increases exponentially with the distance from the mouse-down origin.
Middle Mouse or
Ctrl + Left Mouse: Translate up, down, left, and right.
Ctrl + Middle Mouse: Tilt the camera up/down and right/left. This allows you to look around while stopped.
"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.
Right Mouse: Open the popup menu.
ALT : (Win32) When the viewer is in selection (a.k.a. pick) mode, pressing and holding the ALT key temporarily switches the viewer to viewing mode. When the ALT key is released, the viewer returns to selection mode. Note: If any of the mouse buttons are currently depressed, the ALT key has no effect.
Keypad '-': Decrease viewer speed by 0.5.
Keypad '+': Increase viewer speed by 2.
SoWinFullViewer, SoWinViewer, SoWinComponent, SoWinRenderArea, SoWinPlaneViewer, SoWinExaminerViewer, SoWinFlyViewer
Definition at line 94 of file SoWinWalkViewer.h.
SoWinWalkViewer::SoWinWalkViewer | ( | SoWidget | parent = NULL , |
const char * | name = NULL , |
||
SbBool | buildInsideParent = TRUE , |
||
SoWinFullViewer::BuildFlag | flag = SoWinFullViewer::BUILD_ALL , |
||
SoWinViewer::Type | type = SoWinViewer::BROWSER |
||
) |
Constructor which specifies the viewer type.
Please refer to SoWinViewer for a description of the viewer types.
SoWinWalkViewer::~SoWinWalkViewer | ( | ) |
Destructor.
|
inline |
Get viewer speed multiplier.
Definition at line 134 of file SoWinWalkViewer.h.
|
virtual |
Sets the camera that will be controlled by the viewer.
Setting the camera is only needed if the first camera found in the scene when setting the scene graph isn't the one that should be controlled.
Reimplemented from SoWinConstrainedViewer.
|
virtual |
Sets the camera type that will be created by the viewer if no cameras are found in the scene graph (see SoPerspectiveCamera and SoOrthographicCamera).
By default an SoPerspectiveCamera will be created if no cameras are found.
Note: The set method will only take effect the next time a scene graph is specified (and if no cameras are found).
Reimplemented from SoWinViewer.
|
virtual |
Sets whether the viewer is allowed to change the cursor over the renderArea window.
When disabled, the cursor is undefined by the viewer and will not change as the mode of the viewer changes. When re-enabled, the viewer will reset it to the appropriate icon.
Disabling the cursor enables the application to set the cursor directly on the viewer window or on any parent widget of the viewer. This can be used when setting a busy cursor on the application shell.
Reimplemented from SoWinViewer.
|
virtual |
Externally set the viewer into/out off seek mode (default OFF).
Actual seeking will not happen until the viewer decides to (ex: mouse click).
Note: setting the viewer out of seek mode while the camera is being animated will stop the animation to the current location.
Reimplemented from SoWinViewer.
|
inline |
Set viewer speed multiplier (default is 1).
Definition at line 129 of file SoWinWalkViewer.h.
|
virtual |
Sets whether the viewer is turned on or off.
When turned on, messages are consumed by the viewer. When viewing is off, messages are processed by the viewer's render area. This means messages will be sent down to the scene graph for processing (i.e. picking can occur). Note that if the application has registered a message callback , it will be invoked on every message, whether viewing is turned on or not. However, the return value of this callback (which specifies whether the callback handled the message or not) is ignored when viewing is on. That is, the viewer will process the message even if the callback already did. This is to ensure that the viewing paradigm is not broken (default viewing is on).
Reimplemented from SoWinFullViewer.