SoNodeVisualize.3coin4 - Man Page



Inherits SoBaseKit.

Public Member Functions

virtual SoType getTypeId (void) const
Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and 'downward' casting.
virtual const SoNodekitCatalog * getNodekitCatalog (void) const
SoNodeVisualize * visualize (SoNode *)
bool clicked ()
void setAlternate (bool alternating=true)
bool nodeHasChildren ()
unsigned int nodeNumChildren ()
bool isAlternating () const
virtual void handleEvent (SoHandleEventAction *action)
void traverse (SoProfilerStats *stats)

Static Public Member Functions

static SoType getClassTypeId (void)
static const SoNodekitCatalog * getClassNodekitCatalog (void)
static void initClass (void)
static void cleanClass (void)
static SoNodeVisualize * visualizeTree (SoNode *node, int depth=-1)

Protected Member Functions

virtual const SoFieldData * getFieldData (void) const
SoNodeVisualize (void)
virtual ~SoNodeVisualize ()
SbVec2s getWidth ()
void setupChildCatalog (SoNode *node, int depth)
void visualizeSubTree (SoNode *node, int depth=-1)
void recalculate ()
SbVec2s recalculateWidth ()
SoNodeVisualize * getSoNodeVisualizeRoot ()
void internalAlternating (bool alternating, int direction)
void reset ()
SoNodeList * getChildGeometry ()

Static Protected Member Functions

static const SoFieldData ** getFieldDataPtr (void)
static const SoNodekitCatalog ** getClassNodekitCatalogPtr (void)

Protected Attributes

SoSFNode topSeparator
SoSFNode childrenVisible
SoSFNode color
SoSFNode texture
SoSFNode textureTransform
SoSFNode shape
SoSFNode rotSwitch
SoSFNode rotation
SoSFNode childGeometry
SoSFNode translation
SoSFNode lines
SoSFNode lineSep

Additional Inherited Members

Constructor & Destructor Documentation

SoNodeVisualize::SoNodeVisualize (void) [protected]


Note, this constructor is not public, as it sets up the class in an internally inconsistent way, this also ensures that we do not try to analyze ourself, which may do strange things to our state.

FIXME: Should perhaps make a public constructor which takes the same parameters as visualize tree

SoNodeVisualize::~SoNodeVisualize () [protected], [virtual]


Member Function Documentation

SoType SoNodeVisualize::getTypeId (void) const [virtual]

Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and 'downward' casting. Usage example:

void foo(SoNode * node)
  if (node->getTypeId() == SoFile::getClassTypeId()) {
    SoFile * filenode = (SoFile *)node;  // safe downward cast, knows the type

For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine.h (for engine classes) and so on.

For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups.

Reimplemented from SoBaseKit.

const SoFieldData * SoNodeVisualize::getFieldData (void) const [protected], [virtual]

Returns a pointer to the class-wide field data storage object for this instance. If no fields are present, returns NULL.

Reimplemented from SoBaseKit.

const SoNodekitCatalog * SoNodeVisualize::getNodekitCatalog (void) const [virtual]

Returns the nodekit catalog which defines the layout of this class' kit.

Reimplemented from SoBaseKit.

void SoNodeVisualize::initClass (void) [static]

Standard intialization for node catalog

void SoNodeVisualize::cleanClass (void) [static]

Static cleanup

bool SoNodeVisualize::clicked ()

Changes the state of a node with children

void SoNodeVisualize::setAlternate (bool alternate = true)

Turns on the alternating direction state for all children

bool SoNodeVisualize::nodeHasChildren ()

Does the associated node have any children?

unsigned int SoNodeVisualize::nodeNumChildren ()

Number of children of the associated node

void SoNodeVisualize::handleEvent (SoHandleEventAction * action) [virtual]

Checks for intersection with the shape part of the node

Reimplemented from SoBaseKit.

SbVec2s SoNodeVisualize::getWidth (void) [protected]

Returns the size of a bounding box for this subtree

void SoNodeVisualize::visualizeSubTree (SoNode * node, int depth = -1) [protected]

Visualizes a subtree, stops at depth 1

If no argument given, visualizes everything

WARNING: Allthough the default is to visualize everything, it is recommended to set a limit on how deep you want to traverse. If you go to deep, the memory requirements, and recalculation may become so heavy it grinds to a halt. Additionally it is difficult to see, when there is too much information on the screen at once.

SbVec2s SoNodeVisualize::recalculateWidth () [protected]

Calculates the size of a bounding box for this subtree

SoNodeVisualize * SoNodeVisualize::getSoNodeVisualizeRoot () [protected]

Returns the uppermost connected parent

void SoNodeVisualize::internalAlternating (bool alternate, int direction) [protected]

Traverses all nodes, and turns on the alternating state,

May need a recalculation afterwards

void SoNodeVisualize::reset (void) [protected]

Resets the datastructure in anticipation of a reanalysis

This puts the structure in the same inconsistent structure as the empty constructor


Generated automatically by Doxygen for Coin from the source code.


Wed Jul 20 2022 Version 4.0.0 Coin