trusty (3) SoShapeKit.3iv.gz

Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SoShapeKit — shape nodekit class

INHERITS FROM

       SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSeparatorKit > SoShapeKit

SYNOPSIS

       #include <Inventor/nodekits/SoShapeKit.h>

          Fields from class SoSeparatorKit:

     SoSFEnum            renderCaching
     SoSFEnum            boundingBoxCaching
     SoSFEnum            renderCulling
     SoSFEnum            pickCulling

          Parts from class SoShapeKit:

     (SoSeparator)           shapeSeparator
     (SoMaterialBinding)     materialBinding
     (SoNormalBinding)       normalBinding
     (SoTextureCoordinateBinding)
                             textureCoordinateBinding
     (SoShapeHints)          shapeHints
     (SoCoordinate3)         coordinate3
     (SoCoordinate4)         coordinate4
     (SoNormal)              normal
     (SoTextureCoordinate2)  textureCoordinate2
     (SoTextureCoordinateFunction)
                             textureCoordinateFunction
     (SoProfileCoordinate2)  profileCoordinate2
     (SoProfileCoordinate3)  profileCoordinate3
     (SoNodeKitListPart)     profileList
     (SoTransform)           localTransform
     (SoShape)               shape

          Parts from class SoSeparatorKit:

     (SoPickStyle)          pickStyle
     (SoAppearanceKit)      appearance
     (SoUnits)              units
     (SoTransform)          transform
     (SoTexture2Transform)  texture2Transform
     (SoNodeKitListPart)    childList

          Parts from class SoBaseKit:

     (SoNodeKitListPart)  callbackList

          Methods from class SoShapeKit:

                         SoShapeKit()
     static const SoNodekitCatalog *
                         getClassNodekitCatalog() const
     static SoType       getClassTypeId()

          Methods from class SoBaseKit:

     virtual const SoNodekitCatalog *
                              getNodekitCatalog() const
     virtual SoNode *         getPart(const SbName &partName, SbBool makeIfNeeded)
     SbString                 getPartString(const SoBase *part)
     virtual  SoNodeKitPath  *  createPathToPart(const  SbName  &partName,  SbBool  makeIfNeeded,  const  SoPath
                                   *pathToExtend = NULL)
     virtual SbBool           setPart(const SbName &partName, SoNode *newPart)
     SbBool                   set(char *partName, char *parameters)
     SbBool                   set(char *nameValuePairs)
     static SbBool            isSearchingChildren()
     static void              setSearchingChildren(SbBool newVal)

          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)
     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

          Macros from class SoBaseKit:

     SO_GET_PART(kit, partName, partClass)
     SO_CHECK_PART(kit, partName, partClass)

DESCRIPTION

       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 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.

PARTS

     (SoSeparator)           shapeSeparator
          This  is  a private part. The parent node of the actual shape part. It is a 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., SoSoNURBSCurve). 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 tranformation 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.

METHODS

                         SoShapeKit()
          Constructor.

     static const SoNodekitCatalog *
                         getClassNodekitCatalog() const
          Returns an SoNodekitCatalog for the class SoShapeKit.

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

CATALOG PARTS

       ┌───────────────────────────────────────────────────────────────────────────────────────────┐
       │                                        All parts                                          │
       │                                                                                   NULL by │
       │Part Name                   Part Type                   Default Type               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   │
       │textureCoordinateBinding    TextureCoordinateBinding    --                           yes   │
       │shapeHints                  ShapeHints                  --                           yes   │
       │coordinate3                 Coordinate3                 --                           yes   │
       │coordinate4                 Coordinate4                 --                           yes   │
       │normal                      Normal                      --                           yes   │
       │textureCoordinate2          TextureCoordinate2          --                           yes   │
       │textureCoordinateFunction   TextureCoordinateFunction   TextureCoordinateDefault     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   Permissible Types              │
       │                                                               │
       │callbackList   Separator        Callback, EventCallback        │
       │childList      Separator        ShapeKit, SeparatorKit         │
       │profileList    Group            Profile                        │
       │                                                               │
       └───────────────────────────────────────────────────────────────┘

FILE FORMAT/DEFAULTS

       ShapeKit {
          renderCaching              AUTO
          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 {
          }

     }

SEE ALSO

       SoAppearanceKit,  SoBaseKit,  SoCameraKit,  SoLightKit,  SoNodeKit,  SoNodeKitDetail,  SoNodeKitListPart,
       SoNodeKitPath,  SoNodekitCatalog,  SoSceneKit,  SoSeparatorKit, SoWrapperKit, SoCone, SoCube, SoCylinder,
       SoIndexedNurbsCurve,  SoIndexedNurbsSurface,  SoNurbsCurve,   SoNurbsSurface,   SoShapeHints,   SoSphere,
       SoText2, SoText3, SoVertexShape

                                                                                               SoShapeKit(3IV)()