SoComputeBoundingBox(3IV)

NAME
SoComputeBoundingBox — computes the bounding box and center of a scene graph

INHERITS FROM
SoBase > SoFieldContainer > SoEngine > SoComputeBoundingBox

SYNOPSIS
#include <Inventor/engines/SoComputeBoundingBox.h>

Inputs from class SoComputeBoundingBox:

SoSFNode
node
SoSFPath
path

Outputs from class SoComputeBoundingBox:

(SoSFVec3f)
min
(SoSFVec3f)
max
(SoSFVec3f)
boxCenter
(SoSFVec3f)
objectCenter

Methods from class SoComputeBoundingBox:

SoComputeBoundingBox()
void
setViewportRegion(const SbViewportRegion &vpReg);
const SbViewportRegion &
getViewportRegion();

Methods from class SoEngine:

static SoType
getClassTypeId()
virtual int
getOutputs(SoEngineOutputList &list) const
SoEngineOutput *
getOutput(const SbName &outputName) const
SbBool
getOutputName(const SoEngineOutput *output, SbName &outputName) const
SoEngine *
copy() const
static SoEngine *
getByName(const SbName &name)
static int
getByName(const SbName &name, SoEngineList &list)

Methods from class SoFieldContainer:

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

Methods from class SoBase:

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

DESCRIPTION
This engine computes the bounding box and center of a scene graph. The scene graph can be defined by a path or by a root node.

If the path input is not NULL, the bounding box of the graph defined by the path will be computed. If path is NULL, but the node input is not NULL, the bounding box is computed on the graph rooted by the node. By default, the two inputs are NULL. If both the inputs are NULL, the outputs are disabled.

The engine uses a default viewport region. If the graph includes screen-based objects (such as SoText2) you can call setViewportRegion() on the engine instance to set up the correct viewport region to use.

INPUTS
SoSFNode
node
Defines the graph for which the bounding box is computed.

SoSFPath
path
Alternatively, defines the graph for which the bounding box is computed.

OUTPUTS
(SoSFVec3f)
min
Minimum point of the computed bounding box.

(SoSFVec3f)
max
Maximum point of the computed bounding box.

(SoSFVec3f)
boxCenter
Center of the computed bounding box.

(SoSFVec3f)
objectCenter
Center of the objects in the graph.

METHODS

SoComputeBoundingBox()
Constructor

void
setViewportRegion(const SbViewportRegion &vpReg);
Sets the viewport region to use for the bounding box computation.

const SbViewportRegion &
getViewportRegion();
Returns the viewport region to use for the bounding box computation.

FILE FORMAT/DEFAULTS
ComputeBoundingBox {
node	NULL
path	NULL
}

SEE ALSO
SoEngineOutput, SoGetBoundingBoxAction, SbBox3f