logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SoNormalBinding — node that specifies how multiple surface normals are bound to shapes

Action Behavior

SoGLRenderAction,SoCallbackAction,SoRayPickAction
          Sets the current normal binding type.

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

SoSFEnumvalue
          Specifies how to bind normals to shapes.

File Format/Defaults

NormalBinding{valuePER_VERTEX_INDEXED}

Inherits From

       SoBase > SoFieldContainer > SoNode > SoNormalBinding

Methods

SoNormalBinding()
          Creates a normal binding node with default settings.

     staticSoTypegetClassTypeId()
          Returns type identifier for this class.

Name

       SoNormalBinding — node that specifies how multiple surface normals are bound to shapes

See Also

SoMaterialBinding,SoNormal,SoTextureCoordinateBinding,SoVertexShapeSoNormalBinding(3IV)()

Synopsis

#include<Inventor/nodes/SoNormalBinding.h>enumBinding{SoNormalBinding::OVERALL     Whole object has same normal
          SoNormalBinding::PER_PART    One normal for each part of object
          SoNormalBinding::PER_PART_INDEXED
                                       One normal for each part, indexed
          SoNormalBinding::PER_FACE    One normal for each face of object
          SoNormalBinding::PER_FACE_INDEXED
                                       One normal for each face, indexed
          SoNormalBinding::PER_VERTEX  One normal for each vertex of object
          SoNormalBinding::PER_VERTEX_INDEXED
                                       One normal for each vertex, indexed
     }

          Fields from class SoNormalBinding:

     SoSFEnumvalue

          Methods from class SoNormalBinding:

                         SoNormalBinding()staticSoTypegetClassTypeId()

          Methods from class SoNode:

     voidsetOverride(SbBoolstate)SbBoolisOverride()constSoNode*copy(SbBoolcopyConnections=FALSE)constvirtualSbBoolaffectsState()conststaticSoNode*getByName(constSbName&name)staticintgetByName(constSbName&name,SoNodeList&list)

          Methods from class SoFieldContainer:

     voidsetToDefaults()SbBoolhasDefaultValues()constSbBoolfieldsAreEqual(constSoFieldContainer*fc)constvoidcopyFieldValues(constSoFieldContainer*fc,SbBoolcopyConnections=FALSE)SbBoolset(constchar*fieldDataString)voidget(SbString&fieldDataString)virtualintgetFields(SoFieldList&resultList)constvirtualSoField*getField(constSbName&fieldName)constSbBoolgetFieldName(constSoField*field,SbName&fieldName)constSbBoolisNotifyEnabled()constSbBoolenableNotify(SbBoolflag)

          Methods from class SoBase:

     voidref()voidunref()constvoidunrefNoDelete()constvoidtouch()virtualSoTypegetTypeId()constSbBoolisOfType(SoTypetype)constvirtualvoidsetName(constSbName&name)virtualSbNamegetName()const

See Also