SoNormal(3IV)

SoNormal (SoNorm) - node that defines surface normals for shapes

Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.22.

NAME
     SoNormal (SoNorm) - node that defines surface normals for shapes

INHERITS FROM
     SoBase > SoFieldContainer > SoNode > SoNormal

SYNOPSIS
     #include <Inventor_c/nodes/SoNormal.h>

     typedef SoNormal    SoNorm

          Fields from class SoNormal:

     SoMFVec3f           vector

          Functions from class SoNormal:

     SoNormal *          SoNormCreate()
     SoType              SoNormGetClassTypeId()

          Functions from class SoNode:

     void                SoNormSetOverride(SoNorm *this, SbBool state)
     SbBool              SoNormIsOverride(const SoNorm *this)
     SoNode *            SoNormCopy(const SoNorm *this, SbBool copyConnections
                              = FALSE)
     SbBool              SoNormAffectsState(const SoNorm *this)
     SoNode *            SoNormGetByName(const char *name)
     int                 SoNormGetByNameList(const char *name, SoNodeList
                              *list)

          Functions from class SoFieldContainer:

     void                SoNormSetToDflts(SoNorm *this)
     SbBool              SoNormHasDfltVals(const SoNorm *this)
     SbBool              SoNormFldsAreEq(const SoNorm *this, const
                              SoFieldContainer *fc)
     void                SoNormCopyFieldVals(SoNorm *this, const
                              SoFieldContainer *fc, SbBool copyConnections =
                              FALSE)
     SbBool              SoNormSet(SoNorm *this, const char *fieldDataString)
     void                SoNormGet(SoNorm *this, SbString *fieldDataString)
     int                 SoNormGetFields(const SoNorm *this, SoFieldList
                              *resultList)
     SoField *           SoNormGetField(const SoNorm *this, const char
                              *fieldName)
     SbBool              SoNormGetFieldName(const SoNorm *this, const SoField
                              *field, SbName *fieldName)
     SbBool              SoNormIsNotifyEnabled(const SoNorm *this)
     SbBool              SoNormEnableNotify(SoNorm *this, SbBool flag)

          Functions from class SoBase:
     void                SoNormRef(SoNorm *this)
     void                SoNormUnref(const SoNorm *this)
     void                SoNormUnrefNoDelete(const SoNorm *this)
     void                SoNormTouch(SoNorm *this)
     SoType              SoNormGetTypeId(const SoNorm *this)
     SbBool              SoNormIsOfType(const SoNorm *this, SoType type)
     void                SoNormSetName(SoNorm *this, const char *name)
     SbName              SoNormGetName(const SoNorm *this)


DESCRIPTION
     This node defines a set of 3D surface normal vectors to be used by
     vertex-based shape nodes that follow it in the scene graph. This node
     does not produce a visible result during rendering; it simply replaces
     the current normals in the rendering state for subsequent nodes to use.
     This node contains one multiple-valued field that contains the normal
     vectors.

     Surface normals are needed to compute lighting when the Phong lighting
     model is used. Most vertex-based shapes that use normals can compute
     default normals if none are specified, depending on the current normal
     binding.

FIELDS
     SoMFVec3f           vector
          Surface normal vectors.


FUNCTIONS
     SoNormal *          SoNormCreate()
          Creates a surface normal node with default settings.

     SoType              SoNormGetClassTypeId()
          Returns type identifier for this class.


ACTION BEHAVIOR
     SoGLRenderAction, SoCallbackAction, SoRayPickAction
          Sets the current normals in the traversal state.


FILE FORMAT/DEFAULTS
     Normal {
          vector  [  ]
     }

SEE ALSO
     SoCoordinate3, SoLightModel, SoNormalBinding, SoVertexShape