Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

SoGetPrimitiveCountAction Class Reference

The SoGetPrimitiveCountAction class counts the primitives in a scene. More...

#include <Inventor/actions/SoGetPrimitiveCountAction.h>

Inheritance diagram for SoGetPrimitiveCountAction::

SoAction List of all members.

Public Methods

 SoGetPrimitiveCountAction (void)
virtual ~SoGetPrimitiveCountAction ()
int getTriangleCount (void) const
int getLineCount (void) const
int getPointCount (void) const
int getTextCount (void) const
int getImageCount (void) const
SbBool containsNoPrimitives (void)
SbBool containsNonTriangleShapes (void)
SbBool is3DTextCountedAsTriangles (void)
void setCount3DTextAsTriangles (const SbBool flag)
SbBool canApproximateCount (void)
void setCanApproximate (const SbBool flag)
void setDecimationValue (SoDecimationTypeElement::Type type, float percentage=1.0)
SoDecimationTypeElement::Type getDecimationType (void)
float getDecimationPercentage (void)
void addNumTriangles (const int num)
void addNumLines (const int num)
void addNumPoints (const int num)
void addNumText (const int num)
void addNumImage (const int num)
void incNumTriangles (void)
void incNumLines (void)
void incNumPoints (void)
void incNumText (void)
void incNumImage (void)

Static Public Methods

void initClass (void)

Protected Methods

virtual void beginTraversal (SoNode *node)

Detailed Description

The SoGetPrimitiveCountAction class counts the primitives in a scene.

Apply this action to a scene if you need to know the number of primitives present in a scenegraph, or parts of a scenegraph.

One common mistake to make when using this action is to think that it traverses just the parts currently in view, like SoGLRenderAction does. (SoGLRenderAction culls away the scenegraph parts outside the camera view volume and does not traverse those.) Like most other action classes, SoGetPrimitiveCountAction actually traverses the complete scenegraph, not just the parts currently in view.


Constructor & Destructor Documentation

SoGetPrimitiveCountAction::SoGetPrimitiveCountAction void
 

Constructor.

SoGetPrimitiveCountAction::~SoGetPrimitiveCountAction [virtual]
 

The destructor.


Member Function Documentation

void SoGetPrimitiveCountAction::initClass void [static]
 

Initializes the run-time type system for this class, and sets up the enabled elements and action method list.

Reimplemented from SoAction.

int SoGetPrimitiveCountAction::getTriangleCount void const
 

Returns number of triangles in graph.

int SoGetPrimitiveCountAction::getLineCount void const
 

Returns number of lines in graph.

int SoGetPrimitiveCountAction::getPointCount void const
 

Returns number of points in graph.

int SoGetPrimitiveCountAction::getTextCount void const
 

Returns number of texts in the graph.

int SoGetPrimitiveCountAction::getImageCount void const
 

Returns the number of images in the graph.

SbBool SoGetPrimitiveCountAction::containsNoPrimitives void
 

Returns whether there are any primitives in graph or not.

SbBool SoGetPrimitiveCountAction::containsNonTriangleShapes void
 

Returns whether there are non-triangular primitives in graph.

SbBool SoGetPrimitiveCountAction::is3DTextCountedAsTriangles void
 

Returns whether SoText3 nodes is counted as triangles or text.

See also:
is3DTextCountedAsTriangles()

void SoGetPrimitiveCountAction::setCount3DTextAsTriangles const SbBool flag
 

Sets whether SoText3 nodes are counted as the triangles of the fonts in the text strings or the text itself. The default is to count as triangles.

See also:
is3DTextCountedAsTriangles()

SbBool SoGetPrimitiveCountAction::canApproximateCount void
 

Returns whether shapes can use an approximate value when counting primitives. This is faster than doing an accurate count. The default is to not approximate.

See also:
setCanApproximate()

void SoGetPrimitiveCountAction::setCanApproximate const SbBool flag
 

Sets whether shapes can do an approximate count.

See also:
canApproximateCount()

void SoGetPrimitiveCountAction::setDecimationValue SoDecimationTypeElement::Type type,
float percentage = 1.0
 

Set up the decimation parameters for the traversal.

On-the-fly decimation is supported in Coin yet, so this call will not have any effect until this feature has been implemented.

SoDecimationTypeElement::Type SoGetPrimitiveCountAction::getDecimationType void
 

Returns decimation type used during the traversal count.

float SoGetPrimitiveCountAction::getDecimationPercentage void
 

Returns decimation percentage used during the traversal count.

void SoGetPrimitiveCountAction::addNumTriangles const int num
 

Adds num triangles to total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::addNumLines const int num
 

Adds num lines to total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::addNumPoints const int num
 

Adds num points to total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::addNumText const int num
 

Adds num texts to total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::addNumImage const int num
 

Adds num texture image maps to total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::incNumTriangles void
 

Adds a single triangle to the total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::incNumLines void
 

Adds a single line to the total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::incNumPoints void
 

Adds a single point to the total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::incNumText void
 

Adds a single text to the total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::incNumImage void
 

Adds a single texture image map to the total count. Used by node instances in the scene graph during traversal.

void SoGetPrimitiveCountAction::beginTraversal SoNode * node [protected, virtual]
 

This virtual method is called from SoAction::apply(), and is the entry point for the actual scenegraph traversal.

It can be overridden to initialize the action at traversal start, for specific initializations in the action subclasses inheriting SoAction.

Default method just calls traverse(), which any overridden implementation of the method must do too (or call SoAction::beginTraversal()) to trigger the scenegraph traversal.

Reimplemented from SoAction.


The documentation for this class was generated from the following files:
Generated at Tue Mar 5 03:31:25 2002 for Coin by doxygen1.2.9 written by Dimitri van Heesch, © 1997-2001