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  -  SOSEPARATOR (3)

NAME

SoSeparator — group node that saves and restores traversal state

CONTENTS

Inherits From
Synopsis
Description
Fields
Methods
Action Behavior
File Format/defaults
See Also

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoGroup > SoSeparator

SYNOPSIS

#include <Inventor/nodes/SoSeparator.h>

enum CacheEnabled {     SoSeparator::OFF    
                     SoSeparator::OFF     Never build a cache    
SoSeparator::ON    
                     SoSeparator::ON      Always try to build a cache    
SoSeparator::AUTO    
                     SoSeparator::AUTO    Decide whether to cache based on some heuristic
}

Fields from class SoSeparator:

    SoSFEnum    
                    
SoSFEnum             renderCaching    
SoSFEnum    
                    
SoSFEnum             boundingBoxCaching    
SoSFEnum    
                    
SoSFEnum             renderCulling    
SoSFEnum    
                    
SoSFEnum             pickCulling

Methods from class SoSeparator:

       
                    
                     SoSeparator()    
   
                    
                     SoSeparator(int nChildren)    
static void    
                    
static void          setNumRenderCaches(int howMany)    
static int    
                    
static int           getNumRenderCaches()    
static SoType    
                    
static SoType        getClassTypeId()

Methods from class SoGroup:

    void    
                    
void                 addChild(SoNode *child)    
void    
                    
void                 insertChild(SoNode *child, int newChildIndex)    
SoNode *    
                    
SoNode *             getChild(int index) const    
int    
                    
int                  findChild(const SoNode *child) const    
int    
                    
int                  getNumChildren() const    
void    
                    
void                 removeChild(int index)    
void    
                    
void                 removeChild(SoNode *child)    
void    
                    
void                 removeAllChildren()    
void    
                    
void                 replaceChild(int index, SoNode *newChild)    
void    
                    
void                 replaceChild(SoNode *oldChild, SoNode *newChild)

Methods from class SoNode:

    void    
                    
void                 setOverride(SbBool state)    
SbBool    
                    
SbBool               isOverride() const    
SoNode *    
                    
SoNode *             copy(SbBool copyConnections = FALSE) const    
virtual SbBool    
                    
virtual SbBool       affectsState() const    
static SoNode *    
                    
static SoNode *      getByName(const SbName &name)    
static int    
                    
static int           getByName(const SbName &name, SoNodeList &list)

Methods from class SoFieldContainer:

    void    
                    
void                 setToDefaults()    
SbBool    
                    
SbBool               hasDefaultValues() const    
SbBool    
                    
SbBool               fieldsAreEqual(const SoFieldContainer *fc) const    
void    
                    
void                 copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)    
SbBool    
                    
SbBool               set(const char *fieldDataString)    
void    
                    
void                 get(SbString &fieldDataString)    
virtual int    
                    
virtual int          getFields(SoFieldList &resultList) const    
virtual SoField *    
                    
virtual SoField *    getField(const SbName &fieldName) const    
SbBool    
                    
SbBool               getFieldName(const SoField *field, SbName &fieldName) const    
SbBool    
                    
SbBool               isNotifyEnabled() const    
SbBool    
                    
SbBool               enableNotify(SbBool flag)

Methods from class SoBase:

    void    
                    
void                 ref()    
void    
                    
void                 unref() const    
void    
                    
void                 unrefNoDelete() const    
void    
                    
void                 touch()    
virtual SoType    
                    
virtual SoType       getTypeId() const    
SbBool    
                    
SbBool               isOfType(SoType type) const    
virtual void    
                    
virtual void         setName(const SbName &name)    
virtual SbName    
                    
virtual SbName       getName() const

DESCRIPTION

This group node performs a push (save) of the traversal state before traversing its children and a pop (restore) after traversing them. This isolates the separator’s children from the rest of the scene graph. A separator can include lights, cameras, coordinates, normals, bindings, and all other properties. Separators are relatively inexpensive, so they can be used freely within scenes.

The SoSeparator node provides caching of state during rendering and bounding box computation. This feature can be enabled by setting the renderCaching and boundingBoxCaching fields. By default, these are set to AUTO, which means that Inventor decides whether to build a cache based on internal heuristics.

Separators can also perform culling during rendering and picking. Culling skips over traversal of the separator’s children if they are not going to be rendered or picked, based on the comparison of the separator’s bounding box with the current view volume. Culling is controlled by the renderCulling and pickCulling fields. These are also set to AUTO by default; however, render culling can be expensive (and can interfere with render caching), so the AUTO heuristics leave it disabled unless specified otherwise.

FIELDS

    SoSFEnum    
                    
SoSFEnum             renderCaching
Whether to cache during rendering traversal.

    SoSFEnum    
                    
SoSFEnum             boundingBoxCaching
Whether to cache during bounding box traversal.

    SoSFEnum    
                    
SoSFEnum             renderCulling
Whether to cull during rendering traversal.

    SoSFEnum    
                    
SoSFEnum             pickCulling
Whether to cull during picking traversal.

METHODS

       
                    
                     SoSeparator()
Creates a separator node with default settings.

       
                    
                     SoSeparator(int nChildren)
Constructor that takes approximate number of children.

    static void    
                    
static void          setNumRenderCaches(int howMany)
By default, each separator node maintains 2 render caches. (This is to allow two different representations, such as filled and wire-frame, to both be cached.) The setNumRenderCaches() method sets the number of render caches each separator will have. Each render cache uses memory, so increasing this number may increase the memory requirements of the application. This method affects only separators that are created after it is called, not separators that were created before. Setting the number of caches to 0 turns off render caching globally from then on.

    static int    
                    
static int           getNumRenderCaches()
Returns the current number of render caches.

    static SoType    
                    
static SoType        getClassTypeId()
Returns type identifier for this class.

ACTION BEHAVIOR

SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoGetMatrixAction, SoHandleEventAction, SoRayPickAction, SoSearchAction
Saves the current traversal state, traverses all children, and restores the previous traversal state.

FILE FORMAT/DEFAULTS

Separator {



renderCaching       AUTO
boundingBoxCaching  AUTO
renderCulling       AUTO
pickCulling         AUTO


}

SEE ALSO

SoSelection, SoTransformSeparator

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


SOSEPARATOR(3IV) (-->)

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