SoXtMPRenderArea Class Reference

Component for rendering Open Inventor scene graphs. More...

#include <Inventor/MP/Xt/SoXtMPRenderArea.h>

Inheritance diagram for SoXtMPRenderArea:
SoXtMPGLWidget SoStereoViewer SoXtComponent SoXtMPViewer SoXtMPFullViewer SoXtMPConstrainedViewer SoXtMPExaminerViewer SoXtMPPlaneViewer SoXtMPFlyViewer SoXtMPWalkViewer

List of all members.

Public Member Functions

 SoXtMPRenderArea (SoWidget parent=NULL, const char *name=NULL, SbBool buildInsideParent=TRUE, SbBool getMouseInput=TRUE, SbBool getKeyboardInput=TRUE)
 ~SoXtMPRenderArea ()
virtual void setSceneGraph (SoNode *newScene)
virtual SoNodegetSceneGraph ()
void registerDevice (SoXtDevice *d)
void unregisterDevice (SoXtDevice *d)
void setBackgroundColor (const SbColor &c)
const SbColorgetBackgroundColor () const
void setBackgroundIndex (int index)
int getBackgroundIndex () const
void setColorMap (int startIndex, int num, const SbColor *colors)
void setViewportRegion (const SbViewportRegion &newRegion, int id)
const SbViewportRegiongetViewportRegion (int id) const
const SbViewportRegiongetViewportRegion () const
void setTransparencyType (SoGLRenderAction::TransparencyType type)
SoGLRenderAction::TransparencyType getTransparencyType () const
void setClearBeforeRender (SbBool trueOrFalse, SbBool zbTrueOrFalse=TRUE)
SbBool isClearBeforeRender () const
SbBool isClearZBufferBeforeRender () const
void setAutoRedraw (SbBool trueOrFalse)
SbBool isAutoRedraw () const
void setRedrawPriority (uint32_t priority)
uint32_t getRedrawPriority () const
void render ()
void scheduleRedraw ()
void redrawOnSelectionChange (SoSelection *s)
void setEventCallback (SoXtMPRenderAreaEventCB *fcn, void *userData=NULL)
void setSceneManager (SoSceneManager *sm)
SoSceneManagergetSceneManager () const
void setGLRenderAction (SoGLRenderAction *ra)
SoGLRenderActiongetGLRenderAction () const
void setGLRenderAction (SoGLRenderAction *ra, int id)
SoGLRenderActiongetGLRenderAction (int id) const
void show (void)
SoTimerSensorgetTrackerSensor ()
void setInterEyeDistance (float value)
float getInterEyeDistance (void)
virtual SoGLContextgetViewerContext ()
virtual SoSceneManagergetViewerSceneManager ()
virtual SbBool isViewerDoubleBuffer ()
virtual void setStereoViewing (SbBool onOrOff)
virtual SbBool isStereoViewing ()
virtual SoCameragetViewerCamera ()
virtual const SbVec2sgetSize ()
virtual const SbVec2sgetTopLeft ()
virtual const SbVec2sgetBottomRight ()
void setStereoViewType (SoBaseStereo *stereo)
SoBaseStereogetStereoViewType ()
void reverseStereoView (SbBool reverse)
SbBool isStereoViewReversed ()
virtual void setStereoAbsoluteAdjustments (SbBool absolute)
virtual SbBool isStereoAbsoluteAdjustments () const
virtual void setStereoBalance (float balance, SbBool nearFrac=false)
virtual float getStereoBalance ()
virtual SbBool isStereoBalanceNearFrac ()
virtual void setStereoActive (SbBool activate)
virtual SbBool isStereoActive ()
void setViewport (short left, short bottom, short width, short height)
void getViewport (short &left, short &bottom, short &width, short &height)
void * getViewer (void)
void setStereoOffset (float dist)
float getStereoOffset ()
virtual void actualRendering ()

Static Public Member Functions

static uint32_t getDefaultRedrawPriority ()
static void addThreadInitCB (SoXtMPRenderAreaThreadInitCB *fcn, void *userData)
static void removeThreadInitCB (SoXtMPRenderAreaThreadInitCB *fcn, void *userData)
static void addThreadPreRenderCB (SoXtMPRenderAreaThreadRenderCB *fcn, void *userData)
static void removeThreadPreRenderCB (SoXtMPRenderAreaThreadRenderCB *fcn, void *userData)
static void addThreadPostRenderCB (SoXtMPRenderAreaThreadRenderCB *fcn, void *userData)
static void removeThreadPostRenderCB (SoXtMPRenderAreaThreadRenderCB *fcn, void *userData)

Deprecated



SoDEPRECATED void setOverlaySceneGraph (SoNode *newScene)
SoDEPRECATED SoNodegetOverlaySceneGraph ()
SoDEPRECATED void setOverlayBackgroundIndex (int index)
SoDEPRECATED int getOverlayBackgroundIndex () const
SoDEPRECATED void setOverlayColorMap (int startIndex, int num, const SbColor *colors)
SoDEPRECATED void setClearBeforeOverlayRender (SbBool trueOrFalse)
SoDEPRECATED SbBool isClearBeforeOverlayRender () const
SoDEPRECATED void renderOverlay ()
SoDEPRECATED void scheduleOverlayRedraw ()
SoDEPRECATED void redrawOverlayOnSelectionChange (SoSelection *s)
SoDEPRECATED void setOverlaySceneManager (SoSceneManager *sm)
SoDEPRECATED SoSceneManagergetOverlaySceneManager () const
SoDEPRECATED void setOverlayGLRenderAction (SoGLRenderAction *ra)
SoDEPRECATED SoGLRenderActiongetOverlayGLRenderAction () const
SoDEPRECATED void setAntialiasing (SbBool smoothing, int numPasses)
SoDEPRECATED void getAntialiasing (SbBool &smoothing, int &numPasses) const
virtual SoDEPRECATED void adjustClippingPlanes ()
SoDEPRECATED HDC getCurrentDC ()

Detailed Description

Component for rendering Open Inventor scene graphs.

This is the MultiPipe version of SoXtRenderArea.

NOTE: This class does not exist in Open Inventor 10.0 and later.

NOTE: Since Open Inventor version 8.0 we recommend using the ScaleViz extension, rather than SoXtMP classes, for multi-GPU rendering (multiple graphics boards in the same machine). Using ScaleViz you can continue to use the standard render area or view classes, and conveniently adapt to the hardware configuration using a ScaleViz configuration file.

General:

This class provides Open Inventor rendering and event handling inside a GLX Motif widget. There is a routine to specify the scene to render. The scene is automatically rendered whenever anything under it changes (a data sensor is attached to the root of the scene), unless explicitly told not to do so (manual redraws). Users can also set Open Inventor rendering attributes such as the transparency type, antialiasing on or off, etc. This class employs an SoSceneManager to manage rendering and event handling.

X events that occur in the render area can be handled by the application, by the viewer (if this is really a viewer), or by the nodes in the scene graph. When a event occurs, it is first passed to the application event callback function registered with the setEventCallback() method on SoXtMPRenderArea. If this function does not exist or returns FALSE, the X event is either used directly by the viewer or translated to an SoEvent for further scene graph processing. If the viewer does not handle the event, and an overlay scene graph exists, the SoEvent is sent to that scene graph by way of an SoHandleEventAction. If no node in the overlay scene graph handles the event (i.e., calls setHandled() on the SoHandleEventAction), the SoEvent is passed to the normal scene graph in the same manner.

Overlay rendering:

This class supports overlay rendering on graphics boards with hardware overlay planes, for example NVIDIA Quadro boards. Open Inventor creates a 8 bit indexed overlay context when this option is enabled in the graphics hardware configuration of your system. To render a scene graph in the overlay context just call the setOverlaySceneGraph function.

For Linux based systems you must modify the "display" section of your Xorg.conf. Add the following lines and restart your X server:

Option "UBB" "1" Option "CIOverlay" "1"

For Microsoft Windows platforms just enable overlay support in the control panel for your graphics board.

RESOURCES

SEE ALSO

SoXtMPGLWidget, SoXtComponent, SoXtMPViewer, SoSceneManager, SoBoxHighlightRenderAction, SoLineHighlightRenderAction


Constructor & Destructor Documentation

SoXtMPRenderArea::SoXtMPRenderArea ( 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 (SoXtMouse and SoXtKeyboard).

SoXtMPRenderArea::~SoXtMPRenderArea (  ) 

Destructor.


Member Function Documentation

virtual void SoXtMPRenderArea::actualRendering (  )  [inline, virtual]

This method is called automatically when the viewer requests that its SoBaseStereo object perform stereo rendering.

actualRendering() may then be called twice (once for each eye view) and therefore must not take into account any stereo-specific settings. It should behave as if it were a rendering method for a monoscopic view.

Implements SoStereoViewer.

static void SoXtMPRenderArea::addThreadInitCB ( SoXtMPRenderAreaThreadInitCB fcn,
void *  userData 
) [static]
static void SoXtMPRenderArea::addThreadPostRenderCB ( SoXtMPRenderAreaThreadRenderCB fcn,
void *  userData 
) [static]
static void SoXtMPRenderArea::addThreadPreRenderCB ( SoXtMPRenderAreaThreadRenderCB fcn,
void *  userData 
) [static]
virtual SoDEPRECATED void SoXtMPRenderArea::adjustClippingPlanes (  )  [virtual]
Deprecated:

Deprecated since Open Inventor 9000
No longer used.

Implements SoStereoViewer.

SoDEPRECATED void SoXtMPRenderArea::getAntialiasing ( SbBool smoothing,
int &  numPasses 
) const

Gets the antialiasing used for rendering.

Deprecated:

Deprecated since Open Inventor 9100
Use method getAntialiasingParameters() to get this information.
const SbColor& SoXtMPRenderArea::getBackgroundColor (  )  const [inline]

Gets the background color for this window.

int SoXtMPRenderArea::getBackgroundIndex (  )  const [inline]

Gets the window background color when in color index mode.

virtual const SbVec2s& SoXtMPRenderArea::getBottomRight (  )  [virtual]

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).

Returns "Bottom" in the first value of the vector and "Right" in the second value (reverse of the usual X,Y ordering).

Implements SoStereoViewer.

SoDEPRECATED HDC SoXtMPRenderArea::getCurrentDC (  )  [inline, virtual]
Deprecated:

Deprecated since Open Inventor 9000
No longer used.

Implements SoStereoViewer.

static uint32_t SoXtMPRenderArea::getDefaultRedrawPriority (  )  [inline, static]

Gets the default priority number of the redraw sensor.

SoGLRenderAction* SoXtMPRenderArea::getGLRenderAction ( int  id  )  const [inline]

Gets the GL render action to use for specified subwidget.

This is used to set selection highlighting with the SoBoxHighlightRenderAction and SoLineHighlightRenderAction classes.

SoGLRenderAction* SoXtMPRenderArea::getGLRenderAction (  )  const [inline]

Gets the GL render action to use.

This is used to set selection highlighting with the SoBoxHighlightRenderAction and SoLineHighlightRenderAction classes.

float SoXtMPRenderArea::getInterEyeDistance ( void   )  [inline]

gets the inter-eye-distance

SoDEPRECATED int SoXtMPRenderArea::getOverlayBackgroundIndex (  )  const [inline]

Gets the overlay window background color index.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED SoGLRenderAction* SoXtMPRenderArea::getOverlayGLRenderAction (  )  const [inline]

Gets the GL render action for the overlay window.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED SoNode* SoXtMPRenderArea::getOverlaySceneGraph (  )  [inline]

Gets the scene graph to be rendered in the overlay plane.

NOTE: This feature requires a graphics board that supports an overlay plane.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED SoSceneManager* SoXtMPRenderArea::getOverlaySceneManager (  )  const [inline]

Gets the overlay plane scene manager.

Note: For convenience most of the SoSceneManager methods have already been added to this class.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
uint32_t SoXtMPRenderArea::getRedrawPriority (  )  const [inline]

Gets the priority of the redraw sensor.

virtual SoNode* SoXtMPRenderArea::getSceneGraph (  )  [virtual]

Gets the scene graph to be rendered in this component's window.

Reimplemented in SoXtMPViewer.

SoSceneManager* SoXtMPRenderArea::getSceneManager (  )  const [inline]

Gets the normal scene manager.

Note: For convenience most of the SoSceneManager methods have already been added to this class.

virtual const SbVec2s& SoXtMPRenderArea::getSize (  )  [virtual]

Returns the size of the OpenGL drawing window in absolute screen coordinates (not relative to parent window) of the native window system.

Implements SoStereoViewer.

virtual float SoXtMPRenderArea::getStereoBalance (  )  [virtual]

Queries the stereo balance (the position of the zero parallax plane).

Implements SoStereoViewer.

float SoXtMPRenderArea::getStereoOffset (  )  [inline, virtual]

Returns the stereo offset.

See setStereoViewing() for additional info.

Implements SoStereoViewer.

SoBaseStereo* SoXtMPRenderArea::getStereoViewType (  )  [virtual]

Returns the stereo view type.

Implements SoStereoViewer.

virtual const SbVec2s& SoXtMPRenderArea::getTopLeft (  )  [virtual]

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).

Returns "Top" in the first value of the vector and "Left" in the second value (reverse of the usual X,Y ordering).

Implements SoStereoViewer.

SoTimerSensor* SoXtMPRenderArea::getTrackerSensor (  )  [inline]

gets the timer sensor that reads the tracking data

SoGLRenderAction::TransparencyType SoXtMPRenderArea::getTransparencyType (  )  const [inline]

Gets the quality level for rendering transparent objects.

See SoGLRenderAction for possible transparency types.

void* SoXtMPRenderArea::getViewer ( void   )  [virtual]

Reimplemented from SoStereoViewer.

virtual SoCamera* SoXtMPRenderArea::getViewerCamera (  )  [virtual]

Returning the camera allows the SoBaseStereo to manipulate it to achieve the stereo effect.

Implements SoStereoViewer.

virtual SoGLContext* SoXtMPRenderArea::getViewerContext (  )  [inline, virtual]

Returns the OpenGL context.

Implements SoStereoViewer.

virtual SoSceneManager* SoXtMPRenderArea::getViewerSceneManager (  )  [inline, virtual]

Returns the Scene Manager.

Implements SoStereoViewer.

void SoXtMPRenderArea::getViewport ( short &  left,
short &  bottom,
short &  width,
short &  height 
) [virtual]

Returns viewport region with origin (lower-left corner) and size, given as pixel coordinates.

Implements SoStereoViewer.

const SbViewportRegion& SoXtMPRenderArea::getViewportRegion (  )  const

Sets viewport region to use for rendering.

Gets current viewport region to use for rendering.

const SbViewportRegion& SoXtMPRenderArea::getViewportRegion ( int  id  )  const [inline]

Gets current viewport region of specified window to use for rendering.

SbBool SoXtMPRenderArea::isAutoRedraw (  )  const [inline]

Queries whether the render area will automatically redraw whenever something in the scene graph changes.

SoDEPRECATED SbBool SoXtMPRenderArea::isClearBeforeOverlayRender (  )  const [inline]

Queries whether the overlay window will be cleared before rendering starts.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SbBool SoXtMPRenderArea::isClearBeforeRender (  )  const [inline]

Queries whether the window will be cleared before rendering starts.

SbBool SoXtMPRenderArea::isClearZBufferBeforeRender (  )  const [inline]

Queries whether the depth buffer (sometimes called the Z buffer) will be cleared before rendering starts.

virtual SbBool SoXtMPRenderArea::isStereoAbsoluteAdjustments (  )  const [inline, virtual]

Queries if the stereo adjustments are absolute.

Not virtual pure for compatibity reasons.

Reimplemented from SoStereoViewer.

virtual SbBool SoXtMPRenderArea::isStereoActive (  )  [virtual]

Queries stereo activation.

Implements SoStereoViewer.

virtual SbBool SoXtMPRenderArea::isStereoBalanceNearFrac (  )  [virtual]

Returns TRUE when the stereo balance adjustement is defined as a fraction of the camera near distance.

Implements SoStereoViewer.

virtual SbBool SoXtMPRenderArea::isStereoViewing (  )  [virtual]
SbBool SoXtMPRenderArea::isStereoViewReversed (  )  [virtual]

Queries reversal of the left and right views.

Implements SoStereoViewer.

virtual SbBool SoXtMPRenderArea::isViewerDoubleBuffer (  )  [virtual]

Queries if viewer is double buffered.

Implements SoStereoViewer.

void SoXtMPRenderArea::redrawOnSelectionChange ( SoSelection s  ) 

Call this convenience method to have this render area redraw whenever the selection list changes in the passed node.

This is useful if using a highlight render action like the SoBoxHighlightRenderAction to correctly render whenever the selection changes. Pass NULL to turn this off.

SoDEPRECATED void SoXtMPRenderArea::redrawOverlayOnSelectionChange ( SoSelection s  ) 

Call this convenience method to have the overlay planes redraw whenever the selection list changes in the passed node.

This is useful if using a highlight render action like the SoBoxHighlightRenderAction to correctly render whenever the selection changes. Pass NULL to turn this off.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
void SoXtMPRenderArea::registerDevice ( SoXtDevice d  ) 

Registers interest in devices.

When a device is registered, messages from that device will be processed by the render area, and passed into the scene graph. Messages from unregistered devices will be ignored.

static void SoXtMPRenderArea::removeThreadInitCB ( SoXtMPRenderAreaThreadInitCB fcn,
void *  userData 
) [static]
static void SoXtMPRenderArea::removeThreadPostRenderCB ( SoXtMPRenderAreaThreadRenderCB fcn,
void *  userData 
) [static]
static void SoXtMPRenderArea::removeThreadPreRenderCB ( SoXtMPRenderAreaThreadRenderCB fcn,
void *  userData 
) [static]
void SoXtMPRenderArea::render (  )  [inline]

Calling this forces the render area to be redrawn now.

It is not necessary to call this method if auto redraw is enabled (which is the default).

SoDEPRECATED void SoXtMPRenderArea::renderOverlay (  )  [inline]

Calling this forces the render area overlay planes to be redrawn now.

It is not necessary to call this method if auto redraw is enabled (which is the default).

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
void SoXtMPRenderArea::reverseStereoView ( SbBool  reverse  )  [virtual]

Sets reversal of the left and right views.

Implements SoStereoViewer.

SoDEPRECATED void SoXtMPRenderArea::scheduleOverlayRedraw (  ) 

Schedules a redraw of the overlay planes to happen sometime soon (as opposed to immediately).

This can be used to compress multiple redraws.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
void SoXtMPRenderArea::scheduleRedraw (  ) 

Schedules a redraw to happen sometime soon (as opposed to immediately).

This can be used to compress multiple redraws.

SoDEPRECATED void SoXtMPRenderArea::setAntialiasing ( SbBool  smoothing,
int  numPasses 
)

Enables smoothing and/or multi-pass antialiasing for rendering.


There are two kinds of antialiasing available: smoothing and multipass antialiasing. If smoothing is set to TRUE, smoothing is enabled. Smoothing uses OpenGL's line- and point-smoothing features to provide cheap antialiasing of lines and points. The value of numPasses controls multipass antialiasing. Each time a render action is applied, Open Inventor renders the scene numPasses times from slightly different camera positions, averaging the results. numPasses can be from one to 255, inclusive. Setting numPasses to one disables multipass antialiasing. You can use either, both, or neither of these antialiasing techniques. By default, both smoothing and multipass antialiasing are disabled.

Deprecated:

Deprecated since Open Inventor 9100
Use setAntialiasing(float,AntialiasingMode) method with mode SUPERSAMPLING or setAntialiasing(SoAntialiasingParameters*) method with an SoAccumulationAntialiasingParameters object instead.
void SoXtMPRenderArea::setAutoRedraw ( SbBool  trueOrFalse  ) 

The render area will automatically redraw whenever something in the scene graph changes.

Passing FALSE will disable this feature.

void SoXtMPRenderArea::setBackgroundColor ( const SbColor c  )  [inline]

Sets the background color for this window.

Default is black (0,0,0).

The default value can be set using the environment variable OIV_BACKGROUND_COLOR. Specify three floats (R, G, B) in the range 0. to 1., separated by spaces.

void SoXtMPRenderArea::setBackgroundIndex ( int  index  )  [inline]

Sets the window background color when in color index mode.

Default is black (index 0)).

SoDEPRECATED void SoXtMPRenderArea::setClearBeforeOverlayRender ( SbBool  trueOrFalse  )  [inline]

Enables/prevents overlay window clearing from happening before a rendering starts (default is clear TRUE).

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
void SoXtMPRenderArea::setClearBeforeRender ( SbBool  trueOrFalse,
SbBool  zbTrueOrFalse = TRUE 
) [inline]

Enables/prevents window clearing from happening before a rendering starts (default is clear TRUE).

This can be useful to limit flickering when doing single buffering and geometry covers the entire window (used in the material editor). Also controls whether the depth buffer (sometimes called the Z buffer) is cleared before rendering.

void SoXtMPRenderArea::setColorMap ( int  startIndex,
int  num,
const SbColor colors 
)

Sets the colors to use when displaying in color index mode.

This will load the color map with the given colors at the starting index.

void SoXtMPRenderArea::setEventCallback ( SoXtMPRenderAreaEventCB fcn,
void *  userData = NULL 
) [inline]

X events 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 event (when viewers are not in viewing mode).

This method allows the application to register a callback for handling events that occur in the window, instead of sending them to the viewers or down the graph. The callback is passed the X events, and should return TRUE if it handled the event. If the callback returns FALSE, then the event will be handled by the render area.

void SoXtMPRenderArea::setGLRenderAction ( SoGLRenderAction ra,
int  id 
) [inline]

Sets the GL render action to use for specified subwidget.

This is used to set selection highlighting with the SoBoxHighlightRenderAction and SoLineHighlightRenderAction classes.

void SoXtMPRenderArea::setGLRenderAction ( SoGLRenderAction ra  ) 

Sets the GL render action to use.

This is used to set selection highlighting with the SoBoxHighlightRenderAction and SoLineHighlightRenderAction classes.

void SoXtMPRenderArea::setInterEyeDistance ( float  value  )  [inline]

sets the inter-eye-distance.

This parameter is used for stereo when the headtracking is enabled

SoDEPRECATED void SoXtMPRenderArea::setOverlayBackgroundIndex ( int  index  )  [inline]

Sets the overlay window background color index.

Default is 0 (clear color)).

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED void SoXtMPRenderArea::setOverlayColorMap ( int  startIndex,
int  num,
const SbColor colors 
)

Sets the colors to use for overlay bit planes.

This will load the color map with the given colors at the starting index.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED void SoXtMPRenderArea::setOverlayGLRenderAction ( SoGLRenderAction ra  )  [inline]

Sets the GL render action for the overlay window.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED void SoXtMPRenderArea::setOverlaySceneGraph ( SoNode newScene  ) 

Sets the scene graph to be rendered in the overlay plane.

NOTE: This feature requires a graphics board that supports an overlay plane.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
SoDEPRECATED void SoXtMPRenderArea::setOverlaySceneManager ( SoSceneManager sm  )  [inline]

Sets the overlay plane scene manager.

Note: For convenience most of the SoSceneManager methods have already been added to this class.

Deprecated:

Deprecated since Open Inventor 9610
Overlay feature is legacy, and no longer makes sense with current hardware.
void SoXtMPRenderArea::setRedrawPriority ( uint32_t  priority  )  [inline]

Sets the priority of the redraw sensor.

virtual void SoXtMPRenderArea::setSceneGraph ( SoNode newScene  )  [virtual]

Sets the scene graph to be rendered in this component's window.

Reimplemented in SoXtMPViewer.

void SoXtMPRenderArea::setSceneManager ( SoSceneManager sm  ) 

Sets the normal scene manager.

Note: For convenience most of the SoSceneManager methods have already been added to this class.

virtual void SoXtMPRenderArea::setStereoAbsoluteAdjustments ( SbBool   )  [virtual]

Specifies if stereo adjustments are absolute.

FALSE by default.

The default non-absolute mode allows the stereo settings to be valid over a range of different view volume settings. If you chose absolute mode, you are responsible for modifying the stereo settings (if necessary) when the view volume changes.

When absolute mode is TRUE, stereo offset and balance are used as follows for the right eye view:

 StereoCameraOffset = getStereoAdjustment();
 FrustumAsymmetry   = getBalanceAdjustment();

 glTranslated (-StereoCameraOffset, 0, 0);
 glFrustum (FrustumLeft + FrustumAsymmetry, FrustumRight + FrustumAsymmetry,
            FrustumBottom, FrustumTop, NearClipDistance, FarClipDistance);

The left eye view is symmetric.

When absolute mode is FALSE, stereo offset and balance are used as follows for the right eye view:

Xrange is right minus left (i.e., first two arguments of glFrustum) and multiply that difference by the ratio of the distance to the desired plane of zero parallax to the near clipping plane distance.

 StereoCameraOffset   = Xrange * 0.035 * getStereoAdjustment();
 FrustumAsymmetry     = -StereoCameraOffset * getBalanceAdjustment();
 ZeroParallaxDistance = (NearClipDistance + FarClipDistance)/0.5;

 FrustumAsymmetry *= NearClipDistance / ZeroParallaxDistance;

 glTranslated (-StereoCameraOffset, 0, 0);
 glFrustum (FrustumLeft + FrustumAsymmetry, FrustumRight + FrustumAsymmetry,
            FrustumBottom, FrustumTop, NearClipDistance, FarClipDistance);

The left eye view is symmetric.

Not virtual pure for compatiblity reasons.

Reimplemented from SoStereoViewer.

virtual void SoXtMPRenderArea::setStereoActive ( SbBool  activate  )  [virtual]

Sets stereo activation.

Default is FALSE. The default can be set using the OIV_STEREO_ACTIVE environment variable.

Implements SoStereoViewer.

virtual void SoXtMPRenderArea::setStereoBalance ( float  balance,
SbBool  nearFrac = false 
) [virtual]

Sets the stereo balance (the position of the zero parallax plane) and specifies whether the balance value is defined as a fraction of the camera near distance.

Note: Since the projection matrix always depends on the camera's near plane, in some cases it may be necessary to detect changes to the camera near plane and adjust by setting a new stereo balance value. Open Inventor will make these adjustments automatically if the nearFrac parameter is set to TRUE. In this case the stereo balance value is defined as a fraction of the camera near distance.

Default balance is 1.0. The default can be set using the OIV_STEREO_BALANCE environment variable. Default nearFrac is FALSE. The default can be set using the OIV_STEREO_BALANCE_NEAR_FRAC environment variable.

Implements SoStereoViewer.

void SoXtMPRenderArea::setStereoOffset ( float  dist  )  [virtual]

Sets the stereo offset.

See setStereoViewing() for additional info.

Implements SoStereoViewer.

virtual void SoXtMPRenderArea::setStereoViewing ( SbBool  onOrOff  )  [virtual]
void SoXtMPRenderArea::setStereoViewType ( SoBaseStereo stereoViewType  )  [virtual]

If stereoViewType is NULL, the stereo is inactivated (see setStereoActive).

Default is SoAnaglyphStereo with RED_CYAN color filter. The default can be set using the OIV_STEREO_TYPE environment variable.

Implements SoStereoViewer.

void SoXtMPRenderArea::setTransparencyType ( SoGLRenderAction::TransparencyType  type  ) 

Sets the quality level for rendering transparent objects.

See SoGLRenderAction for possible transparency types.

void SoXtMPRenderArea::setViewport ( short  left,
short  bottom,
short  width,
short  height 
) [virtual]

Sets viewport region with given origin (lower-left corner) and size, given as pixel coordinates.

Implements SoStereoViewer.

void SoXtMPRenderArea::setViewportRegion ( const SbViewportRegion newRegion,
int  id 
) [inline]

Sets viewport region of specified window to use for rendering.

void SoXtMPRenderArea::show ( void   )  [virtual]

This shows the component.

Reimplemented from SoXtComponent.

void SoXtMPRenderArea::unregisterDevice ( SoXtDevice d  ) 

Unregisters interest in devices.

When a device is registered, messages from that device will be processed by the render area, and passed into the scene graph. Messages from unregistered devices will be ignored.


The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 12 Feb 2024
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/