SoNormal — node that defines surface normals for shapes
Contents
Action Behavior
SoGLRenderAction,SoCallbackAction,SoRayPickAction
Sets the current normals in the traversal state.
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
SoMFVec3fvector
Surface normal vectors.
File Format/Defaults
Normal{vector[]}Inherits From
SoBase > SoFieldContainer > SoNode > SoNormal
Methods
SoNormal()
Creates a surface normal node with default settings.
staticSoTypegetClassTypeId()
Returns type identifier for this class.
Name
SoNormal — node that defines surface normals for shapes
See Also
SoCoordinate3,SoLightModel,SoNormalBinding,SoVertexShapeSoNormal(3IV)()
Synopsis
#include<Inventor/nodes/SoNormal.h>
Fields from class SoNormal:
SoMFVec3fvector
Methods from class SoNormal:
SoNormal()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