SoNormalBinding(3IV)NAMESoNormalBinding (SoNormBind) - node that specifies how multiple surface
normals are bound to shapes
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoNormalBindingSYNOPSIS
#include <Inventor_c/nodes/SoNormalBinding.h>
typedef SoNormalBinding SoNormBind
enum SoNormalBindingBinding {
SO_NORM_BIND_OVERALL Whole object has same normal
SO_NORM_BIND_PER_PART One normal for each part of object
SO_NORM_BIND_PER_PART_INDEXED
One normal for each part, indexed
SO_NORM_BIND_PER_FACE One normal for each face of object
SO_NORM_BIND_PER_FACE_INDEXED
One normal for each face, indexed
SO_NORM_BIND_PER_VERTEX One normal for each vertex of object
SO_NORM_BIND_PER_VERTEX_INDEXED
One normal for each vertex, indexed
}
Fields from class SoNormalBinding:
SoSFEnum value
Functions from class SoNormalBinding:
SoNormalBinding * SoNormBindCreate()
SoType SoNormBindGetClassTypeId()
Functions from class SoNode:
void SoNormBindSetOverride(SoNormBind *this, SbBool state)
SbBool SoNormBindIsOverride(const SoNormBind *this)
SoNode * SoNormBindCopy(const SoNormBind *this, SbBool
copyConnections = FALSE)
SbBool SoNormBindAffectsState(const SoNormBind *this)
SoNode * SoNormBindGetByName(const char *name)
int SoNormBindGetByNameList(const char *name, SoNodeList
*list)
Functions from class SoFieldContainer:
void SoNormBindSetToDflts(SoNormBind *this)
SbBool SoNormBindHasDfltVals(const SoNormBind *this)
SbBool SoNormBindFldsAreEq(const SoNormBind *this, const
SoFieldContainer *fc)
Page 1SoNormalBinding(3IV)
void SoNormBindCopyFieldVals(SoNormBind *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
SbBool SoNormBindSet(SoNormBind *this, const char
*fieldDataString)
void SoNormBindGet(SoNormBind *this, SbString
*fieldDataString)
int SoNormBindGetFields(const SoNormBind *this,
SoFieldList *resultList)
SoField * SoNormBindGetField(const SoNormBind *this, const char
*fieldName)
SbBool SoNormBindGetFieldName(const SoNormBind *this, const
SoField *field, SbName *fieldName)
SbBool SoNormBindIsNotifyEnabled(const SoNormBind *this)
SbBool SoNormBindEnableNotify(SoNormBind *this, SbBool flag)
Functions from class SoBase:
void SoNormBindRef(SoNormBind *this)
void SoNormBindUnref(const SoNormBind *this)
void SoNormBindUnrefNoDelete(const SoNormBind *this)
void SoNormBindTouch(SoNormBind *this)
SoType SoNormBindGetTypeId(const SoNormBind *this)
SbBool SoNormBindIsOfType(const SoNormBind *this, SoType
type)
void SoNormBindSetName(SoNormBind *this, const char *name)
SbName SoNormBindGetName(const SoNormBind *this)
DESCRIPTION
This node specifies how the current normals are bound to shapes that
follow in the scene graph. Each shape node may interpret bindings
differently.
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. For bindings that require
multiple normals, be sure to have at least as many normals defined as are
necessary; otherwise, errors will occur.
FIELDS
SoSFEnum value
Specifies how to bind normals to shapes.
FUNCTIONSSoNormalBinding * SoNormBindCreate()
Creates a normal binding node with default settings.
SoType SoNormBindGetClassTypeId()
Returns type identifier for this class.
Page 2SoNormalBinding(3IV)ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction, SoRayPickAction
Sets the current normal binding type.
FILE FORMAT/DEFAULTS
NormalBinding {
value PER_VERTEX_INDEXED
}
SEE ALSO
SoMaterialBinding, SoNormal, SoTextureCoordinateBinding, SoVertexShape
Page 3