plucky (3) SoMaterialBinding.3iv.gz

Provided by: inventor-doc_2.1.6+ds-2_all bug

NAME

       SoMaterialBinding — node that specifies how multiple materials are bound to shapes

INHERITS FROM

       SoBase > SoFieldContainer > SoNode > SoMaterialBinding

SYNOPSIS

       #include <Inventor/nodes/SoMaterialBinding.h>

     enum Binding {
          SoMaterialBinding::OVERALL   Whole object has same material
          SoMaterialBinding::PER_PART  One material for each part of object
          SoMaterialBinding::PER_PART_INDEXED
                                       One material for each part, indexed
          SoMaterialBinding::PER_FACE  One material for each face of object
          SoMaterialBinding::PER_FACE_INDEXED
                                       One material for each face, indexed
          SoMaterialBinding::PER_VERTEX
                                       One material for each vertex of object
          SoMaterialBinding::PER_VERTEX_INDEXED
                                       One material for each vertex, indexed
     }

          Fields from class SoMaterialBinding:

     SoSFEnum            value

          Methods from class SoMaterialBinding:

                         SoMaterialBinding()
     static SoType       getClassTypeId()

          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

       This  node  specifies  how the current materials are bound to shapes that follow in the scene graph. Each
       shape node may interpret bindings differently. The current material always has a  base  value,  which  is
       defined  by  the  first value of all material fields. Since material fields may have multiple values, the
       binding determines how these values are distributed over a shape.

       The bindings for faces and vertices are meaningful only for shapes that are made from faces and vertices.
       Similarly, the indexed bindings are only used by the shapes that allow indexing.

       The  bindings  apply  only  to  diffuse  colors  and  transparency.  Other materials (emissive, specular,
       ambient, shininess) will have the first value applied to the entire shape,  regardless  of  the  material
       binding or the number provided.

       If  the  number  of transparencies is less than the number of diffuse colors, only the first transparency
       value will be used, regardless of the material binding. If the number of diffuse colors in the  state  is
       less  than  the  number required for the given binding, a debug warning will be printed and unpredictable
       colors will result.

FIELDS

     SoSFEnum            value
          Specifies how to bind materials to shapes.

METHODS

                         SoMaterialBinding()
          Creates a material binding node with default settings.

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

ACTION BEHAVIOR

       SoGLRenderAction, SoCallbackAction
          Sets the current material binding type.

FILE FORMAT/DEFAULTS

       MaterialBinding {
          value  OVERALL
     }

SEE ALSO

       SoMaterial, SoNormalBinding, SoShape, SoTextureCoordinateBinding

                                                                                        SoMaterialBinding(3IV)()