Provided by: inventor-doc_2.1.5-10-18_all 

NAME
SoMaterial — surface material definition node
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoMaterial
SYNOPSIS
#include <Inventor/nodes/SoMaterial.h>
Fields from class SoMaterial:
SoMFColor ambientColor
SoMFColor diffuseColor
SoMFColor specularColor
SoMFColor emissiveColor
SoMFFloat shininess
SoMFFloat transparency
Methods from class SoMaterial:
SoMaterial()
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 defines the current surface material properties for all subsequent shapes. SoMaterial sets
several components of the current material during traversal.
Multiple values can be specified for the diffuseColor and transparency. Different shapes interpret
materials with multiple values differently. To bind materials to shapes, use an SoMaterialBinding node.
FIELDS
SoMFColor ambientColor
Ambient color of the surface.
SoMFColor diffuseColor
Diffuse color(s) of the surface.
SoMFColor specularColor
Specular color of the surface.
SoMFColor emissiveColor
Emissive color of the surface.
SoMFFloat shininess
Shininess coefficient of the surface. Values can range from 0.0 for no shininess (a diffuse surface)
to 1.0 for maximum shininess (a highly polished surface).
SoMFFloat transparency
Transparency value(s) of the surface. Values can range from 0.0 for opaque surfaces to 1.0 for
completely transparent surfaces. If the transparency type is SoGLRenderAction::SCREEN_DOOR then only
the first transparency value will be used. With other transparency types, multiple transparencies will
be used, if the SoMaterial node contains as many transparencies as diffuse colors. If there are not as
many transparencies as diffuse colors, only the first transparency will be used.
METHODS
SoMaterial()
Creates a material node with default settings.
static SoType getClassTypeId()
Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction
Sets the ambient color, the diffuse color, the specular color, the emissive color, the shininess, and
the transparency of the current material.
FILE FORMAT/DEFAULTS
Material {
ambientColor 0.2 0.2 0.2
diffuseColor 0.8 0.8 0.8
specularColor 0 0 0
emissiveColor 0 0 0
shininess 0.2
transparency 0
}
SEE ALSO
SoBaseColor, SoLightModel, SoMaterialBinding, SoPackedColor
SoMaterial(3IV)()