Shape nodekit class. More...
#include <Inventor/nodekits/SoShapeKit.h>
Public Member Functions | |
virtual SoType | getTypeId () const |
Returns the type identifier for this specific instance. | |
virtual const SoNodekitCatalog * | getNodekitCatalog () const |
Returns the SoNodekitCatalog for this instance. | |
SoShapeKit () | |
Constructor. | |
Public Member Functions inherited from SoSeparatorKit | |
SoSeparatorKit () | |
Constructor. | |
virtual SbBool | affectsState () const |
Returns TRUE if a node has an effect on the state during traversal. | |
Public Member Functions inherited from SoBaseKit | |
SoBaseKit () | |
Constructor. | |
virtual SoNode * | getPart (const SbName &partName, SbBool makeIfNeeded) |
Searches the nodekit catalog (and those of all nested nodekits) for the part named partName. | |
template<typename PartType > | |
PartType * | getPart (const SbName &partName) |
Like getPart(const SbName&,SbBool) but casts the returned part to the specified type and sets the makeIfNeeded parameter to TRUE. | |
template<typename PartType > | |
PartType * | checkPart (const SbName &partName) |
Like getPart(const SbName&,SbBool) but casts the returned part to the specified type and sets the makeIfNeeded parameter to FALSE. | |
SbString | getPartString (const SoBase *part) |
Given a node or a path to a node, checks if the part exists in the nodekit, in a nested nodekit, or an element of a list part. | |
virtual SoNodeKitPath * | createPathToPart (const SbName &partName, SbBool makeIfNeeded, const SoPath *pathToExtend=NULL) |
Returns a path that begins at this nodekit and ends at partName. | |
virtual SbBool | setPart (const SbName &partName, SoNode *newPart) |
Inserts the given node (not a copy) as the new part specified by partName. | |
SoNONUNICODE SbBool | set (char *nameValuePairListString) |
This function allows field values of parts (nodes) to be set in several different parts simultaneously. | |
SbBool | set (const SbString &nameValuePairListString) |
This function allows field values of parts (nodes) to be set in several different parts simultaneously. | |
SoNONUNICODE SbBool | set (const char *partNameString, const char *parameterString) |
This function allows field values of parts (nodes) to be set. | |
SbBool | set (const SbString &partNameString, const SbString ¶meterString) |
This function allows field values of parts (nodes) to be set. | |
Public Member Functions inherited from SoNode | |
virtual void | setOverride (const SbBool state) |
Turns the override flag on or off. | |
virtual SbBool | isOverride () const |
Returns the state of the override flag. | |
virtual SoNode * | copy (SbBool copyConnections=FALSE) const |
Creates and returns an exact copy of the node. | |
virtual void | touch () |
Marks an instance as modified, simulating a change to it. | |
Public Member Functions inherited from SoFieldContainer | |
void | setToDefaults () |
Sets all fields in this object to their default values. | |
SbBool | hasDefaultValues () const |
Returns TRUE if all of the object's fields have their default values. | |
SbBool | fieldsAreEqual (const SoFieldContainer *fc) const |
Returns TRUE if this object's fields are exactly equal to fc's fields. | |
void | copyFieldValues (const SoFieldContainer *fc, SbBool copyConnections=FALSE) |
Copies the contents of fc's fields into this object's fields. | |
SoNONUNICODE SbBool | set (const char *fieldDataString) |
Sets one or more fields in this object to the values specified in the given string, which should be a string in the Open Inventor file format. | |
SbBool | set (const SbString &fieldDataString) |
Sets one or more fields in this object to the values specified in the given string, which should be a string in the Open Inventor file format. | |
void | get (SbString &fieldDataString) |
Returns the values of the fields of this object in the Open Inventor ASCII file format in the given string. | |
virtual int | getFields (SoFieldList &list) const |
Appends references to all of this object's fields to resultList, and returns the number of fields appended. | |
virtual int | getAllFields (SoFieldList &list) const |
Returns a list of fields, including the eventIn's and eventOut's. | |
virtual SoField * | getField (const SbName &fieldName) const |
Returns a the field of this object whose name is fieldName. | |
virtual SoField * | getEventIn (const SbName &fieldName) const |
Returns a the eventIn with the given name. | |
virtual SoField * | getEventOut (const SbName &fieldName) const |
Returns the eventOut with the given name. | |
SbBool | getFieldName (const SoField *field, SbName &fieldName) const |
Returns the name of the given field in the fieldName argument. | |
SbBool | enableNotify (SbBool flag) |
Notification at this Field Container is enabled (if flag == TRUE) or disabled (if flag == FALSE). | |
SbBool | isNotifyEnabled () const |
Notification is the process of telling interested objects that this object has changed. | |
virtual void | setUserData (void *data) |
Sets application data. | |
void * | getUserData (void) const |
Gets user application data. | |
Public Member Functions inherited from SoBase | |
virtual SbName | getName () const |
Returns the name of an instance. | |
virtual void | setName (const SbName &name) |
Sets the name of an instance. | |
void | setSynchronizable (const bool b) |
Sets this to be a ScaleViz synchronizable object. | |
bool | isSynchronizable () const |
Gets the ScaleViz synchronizable state of this object. | |
Public Member Functions inherited from SoRefCounter | |
void | ref () const |
Adds a reference to an instance. | |
void | unref () const |
Removes a reference from an instance. | |
void | unrefNoDelete () const |
unrefNoDelete() should be called when it is desired to decrement the reference count, but not delete the instance if this brings the reference count to zero. | |
int | getRefCount () const |
Returns current reference count. | |
void | lock () const |
lock this instance. | |
void | unlock () const |
unlock this instance. | |
Public Member Functions inherited from SoTypedObject | |
SbBool | isOfType (const SoType &type) const |
Returns TRUE if this object is of the type specified in type or is derived from that type. | |
template<typename TypedObjectClass > | |
SbBool | isOfType () const |
Returns TRUE if this object is of the type of class TypedObjectClass or is derived from that class. | |
Public Member Functions inherited from SoGetView | |
SoGetView () | |
Default constructor. | |
virtual | ~SoGetView () |
virtual SbBool | getViewportIsEnabled () const |
Returns TRUE if SoGetView functionalities are enabled, FALSE otherwise. | |
virtual const SbVec2f | getViewportOrigin () const |
Returns SbViewportRegion origin. | |
virtual const SbVec2f | getViewportSize () const |
Returns SbViewportRegion size. | |
Static Public Member Functions | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static const SoNodekitCatalog * | getClassNodekitCatalog () |
Returns the SoNodekitCatalog for this class. | |
Static Public Member Functions inherited from SoSeparatorKit | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static const SoNodekitCatalog * | getClassNodekitCatalog () |
Returns the SoNodekitCatalog for this class. | |
Static Public Member Functions inherited from SoBaseKit | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static const SoNodekitCatalog * | getClassNodekitCatalog () |
Returns the SoNodekitCatalog for the class SoBaseKit. | |
static void | setSearchingChildren (SbBool newVal) |
Sets if nodekit children are searched during SoSearchAction traversal. | |
static SbBool | isSearchingChildren () |
Returns TRUE if nodekit children are searched during SoSearchAction traversal. | |
Static Public Member Functions inherited from SoNode | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static SoNode * | getByName (const SbName &name) |
A node's name can be set using SoBase::setName(). | |
static int | getByName (const SbName &name, SoNodeList &list) |
A node's name can be set using SoBase::setName(). | |
Static Public Member Functions inherited from SoFieldContainer | |
static SoType | getClassTypeId () |
Returns the type of this class. | |
Static Public Member Functions inherited from SoBase | |
static SoType | getClassTypeId () |
Returns type identifier for this class. | |
Static Public Member Functions inherited from SoTypedObject | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
Additional Inherited Members | |
Public Types inherited from SoSeparatorKit | |
enum | CacheEnabled { OFF , ON , AUTO } |
Possible values for caching. More... | |
Public Attributes inherited from SoSeparatorKit | |
SoSFEnum | boundingBoxCaching |
Set bounding box caching mode. | |
SoSFEnum | renderCulling |
Set render culling mode. | |
SoSFEnum | pickCulling |
Set pick culling mode. | |
SoDEPRECATED SoSFEnum | renderCaching |
Set render caching mode. | |
Public Attributes inherited from SoBaseKit | |
SoSFBool | boundingBoxIgnoring |
Whether to ignore this node during bounding box traversal. | |
Shape nodekit class.
A nodekit that is used for creating a shape (i.e. geometry). SoShapeKit is derived from SoSeparatorKit and SoBaseKit, and thus inherits all the parts defined by these classes.
Furthermore, SoShapeKit adds numerous parts that can be used to define a variety of shape objects, a localTransform part, and of course a shape part.
All of the property nodes requires to define any of the Open Inventor shapes are included as parts in this class. Not all of these parts (nodes) are needed for any one type of shape. For example, if you set the shape part to be an SoSphere node, then it is not necessary to create a profileCoordinate3 part since it will be ignored in drawing the sphere. (And the unneeded parts will not be created, so there is no performance penalty for using this class of node.
This class contains two private parts. They are both SoSeparator nodes. One of them sits just below the nodekit itself, and serves to contain all properties within this nodekit from affecting nodes that come after this nodekit. The second separator sits above the shape part, and serves to cache the shape even when the transform , localTransform , or appearance parts are changing.
(SoSeparator) shapeSeparator
This is a private part. The parent node of the actual shape part. It is an SoSeparator and is NULL by default, but is created automatically if necessary.
(SoMaterialBinding) materialBinding
An SoMaterialBinding node that can be used to set the material binding for the shape. This part is NULL by default, but is created automatically if necessary.
(SoNormalBinding) normalBinding
An SoNormalBinding node that can be used to set the normal binding for the shape. This part is NULL by default, but is created automatically if necessary.
(SoTextureCoordinateBinding) textureCoordinateBinding
An SoTextureCoordinateBinding node that can be used to set the texture coordinate binding for the shape. This part is NULL by default, but is created automatically if necessary.
(SoShapeHints) shapeHints
An SoShapeHints node that can be used to set the shape hints for the shape. This part is NULL by default, but is created automatically if necessary.
(SoCoordinate3) coordinate3
An SoCoordinate3 node that can be used to set the 3D coordinates for a vertex-based shape. This part is NULL by default, but is created automatically if necessary.
(SoCoordinate4) coordinate4
An SoCoordinate4 node that can be used to set the 4D coordinates for a NURBS shapes. This part is NULL by default, but is created automatically if necessary.
(SoNormal) normal
An SoNormal node that can be used to set the normal vectors for a vertex-based shape. This part is NULL by default, but is created automatically if necessary.
(SoTextureCoordinate2) textureCoordinate2
An SoTextureCoordinate2 node that can be used to set the texture coordinates for a vertex-based shape. This part is NULL by default, but is created automatically if necessary.
(SoTextureCoordinateFunction) textureCoordinateFunction
An SoTextureCoordinateFunction node that can be used to set the a procedural texture coordinates function for a vertex-based shape. This part is NULL by default, but is created automatically if necessary.
(SoProfileCoordinate2) profileCoordinate2
An SoProfileCoordinate2 node that can be used to set the 2D profile coordinates for a shape that uses them, (e.g., SoText3). This part is NULL by default, but is created automatically if necessary.
(SoProfileCoordinate3) profileCoordinate3
An SoProfileCoordinate3 node that can be used to set the 3D profile coordinates for a shape that uses them, (e.g., SoNurbsCurve). This part is NULL by default, but is created automatically if necessary.
(SoNodeKitListPart) profileList
An SoProfileList node that can be used to set the profile curve for a shape that uses them, (e.g., SoNurbsCurve). This part is NULL by default, but is created automatically if necessary.
(SoTransform) localTransform
An SoTransform node that can be used to set a local transformation on the shape. This part is NULL by default, but is created automatically if necessary.
(SoShape) shape
This is the part which specifies the actual shape node. This can be any node derived from SoShape By default, an SoCube is created. It is important to set all of the appropriate parts within this nodekit to suit the type of SoShape that is used. For example, if the shape part is set to an SoFaceSet, then the coordinate3 shape and probably the normal shape would be set as well. See the reference page of the shape used for details on which other nodes are necessary.
boundingBoxCaching | AUTO |
renderCulling | AUTO |
pickCulling | AUTO |
callbackList | NULL |
pickStyle | NULL |
appearance | NULL |
units | NULL |
transform | NULL |
texture2Transform | NULL |
childList | NULL |
materialBinding | NULL |
normalBinding | NULL |
textureCoordinateBinding | NULL |
shapeHints | NULL |
coordinate3 | NULL |
coordinate4 | NULL |
normal | NULL |
textureCoordinate2 | NULL |
textureCoordinateFunction | NULL |
profileCoordinate2 | NULL |
profileCoordinate3 | NULL |
profileList | NULL |
localTransform | NULL |
shape | Cube { |
} |
Part Name | Part Type | Default Type | NULL Default |
callbackList | NodeKitListPart | – | yes |
pickStyle | PickStyle | – | yes |
appearance | AppearanceKit | – | yes |
units | Units | – | yes |
transform | Transform | – | yes |
texture2Transform | Texture2Transform | – | yes |
childList | NodeKitListPart | – | yes |
materialBinding | MaterialBinding | – | yes |
normalBinding | NormalBinding | – | yes |
textureCoordinate- Binding | TextureCoordinateBinding | – | yes |
shapeHints | ShapeHints | – | yes |
coordinate3 | Coordinate3 | – | yes |
coordinate4 | Coordinate4 | – | yes |
normal | Normal | – | yes |
textureCoordinate2 | TextureCoordinate2 | – | yes |
textureCoordinate- Function | TextureCoordinateFunction | Texture Coordinate Default | yes |
profileCoordinate2 | ProfileCoordinate2 | – | yes |
profileCoordinate3 | ProfileCoordinate3 | – | yes |
profileList | NodeKitListPart | – | yes |
localTransform | Transform | – | yes |
shape | Shape | Cube | no |
Extra Information for List Parts from Above Table
Part Name | Container Type | Possible Types |
callbackList | Separator | Callback, EventCallback |
SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKit, SoNodeKitDetail, SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog, SoSceneKit, SoSeparatorKit, SoWrapperKit, SoCone, SoCube, SoCylinder, SoIndexedNurbsCurve, SoIndexedNurbsSurface, SoNurbsCurve, SoNurbsSurface, SoShapeHints, SoSphere, SoText2, SoText3, SoVertexShape
Definition at line 290 of file SoShapeKit.h.
SoShapeKit::SoShapeKit | ( | ) |
Constructor.
|
static |
Returns the SoNodekitCatalog for this class.
|
static |
Returns the type identifier for this class.
|
virtual |
Returns the SoNodekitCatalog for this instance.
Reimplemented from SoSeparatorKit.
|
virtual |
Returns the type identifier for this specific instance.
Reimplemented from SoSeparatorKit.