---
name: "SoTabBoxManip"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoTabBoxManip/3iv"
---

# SoTabBoxManip(3iv)

transform node with 3D Interface for editing scale and translation

## NAME

SoTabBoxManip — transform node with 3D Interface for editing scale and translation

## INHERITS FROM

SoBase \> SoFieldContainer \> SoNode \> SoTransformation \> SoTransform \> SoTransformManip \> SoTabBoxManip

## SYNOPSIS

**#include \<Inventor/manips/SoTabBoxManip.h\>**

Fields from class SoTransform:

**SoSFVec3f**	**translation**\
 **SoSFRotation**	**rotation**\
 **SoSFVec3f**	**scaleFactor**\
 **SoSFRotation**	**scaleOrientation**\
 **SoSFVec3f**	**center**

Methods from class SoTabBoxManip:

	**SoTabBoxManip()**\
 **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

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

As a subclass of **SoTransformManip**, this manip also has a 3D interface to edit some of its fields. In this case, the interface edits the **scaleFactor** and **translation** 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 **SoTabBoxManip** is exactly the same as that of the **SoTabBoxDragger**. To find out more about the interface, see the reference page for **SoTabBoxDragger**. To find out how the manipulator uses a dragger to provide its interface, see the reference page for **SoTransformManip**.

On screen, this manip 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

	**SoTabBoxManip()**\
 Constructor.

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

## FILE FORMAT/DEFAULTS

```
TabBoxManip {
translation	0 0 0
rotation	0 0 1  0
scaleFactor	1 1 1
scaleOrientation	0 0 1  0
center	0 0 0
}
```

## SEE ALSO

**SoCenterballManip, SoHandleBoxManip, SoJackManip, SoTabBoxDragger, SoTrackballManip, SoTransformBoxManip, SoTransformerManip, SoTransform, SoTransformManip**
