GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SOSCENEMANAGER (3)

NAME

SoSceneManager — manages scene graph rendering and event handling

CONTENTS

Inherits From
Synopsis
Description
Methods
See Also

INHERITS FROM

SoSceneManager

SYNOPSIS

#include <Inventor/SoSceneManager.h>

    typedef void    
                    
typedef void         SoSceneManagerRenderCB(void *userData, SoSceneManager *mgr)

Methods from class SoSceneManager:

       
                    
                     SoSceneManager()    
   
                    
                     ~SoSceneManager()    
virtual void    
                    
virtual void         render(SbBool clearWindow = TRUE, SbBool clearZbuffer = TRUE)    
virtual SbBool    
                    
virtual SbBool       processEvent(const SoEvent *event)    
void    
                    
void                 reinitialize()    
void    
                    
void                 scheduleRedraw()    
virtual void    
                    
virtual void         setSceneGraph(SoNode *newScene)    
virtual SoNode *    
                    
virtual SoNode *     getSceneGraph() const    
void    
                    
void                 setWindowSize(const SbVec2s &newSize)    
const SbVec2s &    
                    
const SbVec2s &      getWindowSize() const    
void    
                    
void                 setSize(const SbVec2s &newSize)    
const SbVec2s &    
                    
const SbVec2s &      getSize() const    
void    
                    
void                 setOrigin(const SbVec2s &newOrigin)    
const SbVec2s &    
                    
const SbVec2s &      getOrigin() const    
void    
                    
void                 setBackgroundColor(const SbColor &c)    
const SbColor &    
                    
const SbColor &      getBackgroundColor() const    
void    
                    
void                 setBackgroundIndex(int index)    
int    
                    
int                  getBackgroundIndex() const    
void    
                    
void                 setRGBMode(SbBool onOrOff)    
SbBool    
                    
SbBool               isRGBMode() const    
virtual void    
                    
virtual void         activate()    
virtual void    
                    
virtual void         deactivate()    
void    
                    
void                 setRenderCallback(SoSceneManagerRenderCB *f, void *userData = NULL)    
SbBool    
                    
SbBool               isAutoRedraw() const    
void    
                    
void                 setRedrawPriority(uint32_t priority)    
uint32_t    
                    
uint32_t             getRedrawPriority() const    
static uint32_t    
                    
static uint32_t      getDefaultRedrawPriority()    
static void    
                    
static void          enableRealTimeUpdate(SbBool flag)    
static SbBool    
                    
static SbBool        isRealTimeUpdateEnabled()    
void    
                    
void                 setAntialiasing(SbBool smoothing, int numPasses)    
void    
                    
void                 getAntialiasing(SbBool &smoothing, int &numPasses) const

DESCRIPTION

SoSceneManager provides Inventor rendering and event handling inside a window provided by the caller. The scene manager is able to render in only a portion of a window if desired. The SoXtRenderArea class employs a SoSceneManager, and handles most all the details for setting up a window, converting X events to Inventor events, automatically redrawing the scene when necessary, and so on. It is simplest to use a render area when rendering in an entire window. The SoSceneManager class is available for programmers not working with the Inventor Xt Component and Utility Library.

METHODS

       
                    
                     SoSceneManager()    
   
                    
                     ~SoSceneManager()
Constructor and destructor.

    virtual void    
                    
virtual void         render(SbBool clearWindow = TRUE, SbBool clearZbuffer = TRUE)
Apply an SoGLRenderAction to the scene graph managed here. The caller is responsible for setting up a window to render into. If clearWindow is TRUE, this clears the graphics window before rendering. If clearZbuffer is TRUE, the z buffer will be cleared before rendering.

    virtual SbBool    
                    
virtual SbBool       processEvent(const SoEvent *event)
Process the passed event by applying an SoHandleEventAction to the scene graph managed here. Returns TRUE if the event was handled by a node.

    void    
                    
void                 reinitialize()
Reinitialize graphics. This should be called, for instance, when there is a new window.

    void    
                    
void                 scheduleRedraw()
Schedule a redraw for some time in the near future. If there is no render callback set, or this is not active, no redraw will be scheduled.

    virtual void    
                    
virtual void         setSceneGraph(SoNode *newScene)    
virtual SoNode *    
                    
virtual SoNode *     getSceneGraph() const
Set and get the scene graph which is managed here. This is the Inventor scene which will be traversed for rendering and event processing.

    void    
                    
void                 setWindowSize(const SbVec2s &newSize)    
const SbVec2s &    
                    
const SbVec2s &      getWindowSize() const
Set and get the size of the window in which the scene manager should render. This size must be set before render() and processEvent() are called.

    void    
                    
void                 setSize(const SbVec2s &newSize)    
const SbVec2s &    
                    
const SbVec2s &      getSize() const    
void    
                    
void                 setOrigin(const SbVec2s &newOrigin)    
const SbVec2s &    
                    
const SbVec2s &      getOrigin() const
Set and get the size and origin of the viewport within the window. Default is to render the entire window region. The origin (0,0) is the lower left corner of the window.

    void    
                    
void                 setBackgroundColor(const SbColor &c)    
const SbColor &    
                    
const SbColor &      getBackgroundColor() const
Set and get the window background color when in RGB mode. This is the color the scene manager viewport is cleared to when render() is called with clearWindow set to TRUE. Default is black (0,0,0).

    void    
                    
void                 setBackgroundIndex(int index)    
int    
                    
int                  getBackgroundIndex() const
Set and get the window background color when in color index mode. This is the color the scene manager viewport is cleared to when render() is called with clearWindow set to TRUE. Default is black (index 0).

    void    
                    
void                 setRGBMode(SbBool onOrOff)    
SbBool    
                    
SbBool               isRGBMode() const
Set and get the color mode (TRUE — RGB mode, FALSE — color map mode). Default is RGB mode. Only a subset of Inventor nodes will render correctly in color map mode. Basically, when in color index mode, lighting should be turned off (the model field of SoLightModel should be set to BASE_COLOR), and the SoColorIndex node should be used to specify colors.

    virtual void    
                    
virtual void         activate()    
virtual void    
                    
virtual void         deactivate()
Activate and deactivate the scene manager. The scene manager will only employ sensors for automatic redraw while it is active. Typically, the scene manager should be activated whenever its window is visible on the screen, and deactivated when its window is closed or iconified.

    void    
                    
void                 setRenderCallback(SoSceneManagerRenderCB *f, void *userData = NULL)
The render callback provides a mechanism for automatically redrawing the scene in response to changes in the scene graph. The scene manager employs a sensor to monitor scene graph changes. When the sensor is triggered, the render callback registered here is invoked. The callback should set up its graphics window, then call the scene manager render() method. If the callback is set to NULL (the default), auto-redraw is turned off.

    SbBool    
                    
SbBool               isAutoRedraw() const
Returns TRUE if there is currently a render callback registered.

    void    
                    
void                 setRedrawPriority(uint32_t priority)    
uint32_t    
                    
uint32_t             getRedrawPriority() const    
static uint32_t    
                    
static uint32_t      getDefaultRedrawPriority()
Set and get the priority of the redraw sensor. Sensors are processed based on priority, with priority values of 0 processed immediately. The default priority for the scene manager redraw sensor is 10000.

    static void    
                    
static void          enableRealTimeUpdate(SbBool flag)    
static SbBool    
                    
static SbBool        isRealTimeUpdateEnabled()
Enable/Disable the realTime global field update which normally happen right after a redraw.

    void    
                    
void                 setAntialiasing(SbBool smoothing, int numPasses)    
void    
                    
void                 getAntialiasing(SbBool &smoothing, int &numPasses) const
Set/get the 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, 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.

SEE ALSO

SoXtRenderArea, SoGLRenderAction, SoHandleEventAction

Search for    or go to Top of page |  Section 3 |  Main Index


SOSCENEMANAGER(3IV) (-->)

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.