Scroll to navigation

SoCenterballManip(3IV)() SoCenterballManip(3IV)()

NAME

SoCenterballManip — transform node with 3D interface for editing rotation and center

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoTransformation > SoTransform > SoTransformManip > SoCenterballManip

SYNOPSIS

#include <Inventor/manips/SoCenterballManip.h>


Fields from class SoTransform:


SoSFVec3f translation

SoSFRotation rotation

SoSFVec3f scaleFactor

SoSFRotation scaleOrientation

SoSFVec3f center


Methods from class SoCenterballManip:


SoCenterballManip()

static SoType getClassTypeId()


Methods from class SoTransformManip:


SoDragger * getDragger()

SbBool replaceNode(SoPath *p )

SbBool replaceManip(SoPath *p, SoTransform *newOne ) const


Methods from class SoTransform:


void pointAt(const SbVec3f &fromPoint, const SbVec3f &toPoint)

void getScaleSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const

void getRotationSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const

void getTranslationSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const

void multLeft(const SbMatrix &mat)

void multRight(const SbMatrix &mat)

void combineLeft(SoTransformation *nodeOnRight)

void combineRight(SoTransformation *nodeOnLeft)

void setMatrix(const SbMatrix &mat)

void recenter(const SbVec3f &newCenter)


Methods from class SoNode:


void setOverride(SbBool state)

SbBool isOverride() const

SoNode * copy(SbBool copyConnections = FALSE) const

virtual SbBool affectsState() const

static SoNode * getByName(const SbName &name)

static int getByName(const SbName &name, SoNodeList &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

SoCenterballManip is derived from SoTransform (by way of SoTransformManip). When its fields change, nodes following it in the scene graph rotate, scale, and/or translate.

As a subclass of SoTransformManip, this manipulator also has a 3D interface to edit some of its fields. In this case, the interface edits the rotation and center fields.

A manipulator differs from a dragger. When you move a dragger, no other nodes are affected. When you move an SoTransformManip, other nodes move along with it. (See the reference page for SoTransformManip.)

The interface for an SoCenterballManip is exactly the same as that of the SoCenterballDragger. To find out more about the interface, see the reference page for SoCenterballDragger. To find out how the manipulator uses a dragger to provide its interface, see the reference page for SoTransformManip.

On screen, this manipulator will surround the objects influenced by its motion. This is because it turns on the surroundScale part of the dragger. (See the reference page for SoSurroundScale.)

METHODS


SoCenterballManip()

Constructor.



static SoType getClassTypeId()

Returns type identifier for this class.


FILE FORMAT/DEFAULTS

CenterballManip {

translation 0 0 0 rotation 0 0 1 0 scaleFactor 1 1 1 scaleOrientation 0 0 1 0 center 0 0 0
}

SEE ALSO

SoCenterballDragger, SoHandleBoxManip, SoJackManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformerManip, SoTransform, SoTransformManip