SoMaterial(3IV)
SoMaterial (SoMtl) - surface material definition node
Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.22.
NAME SoMaterial (SoMtl) - surface material definition node INHERITS FROM SoBase > SoFieldContainer > SoNode > SoMaterial SYNOPSIS #include <Inventor_c/nodes/SoMaterial.h> typedef SoMaterial SoMtl Fields from class SoMaterial: SoMFColor ambientColor SoMFColor diffuseColor SoMFColor specularColor SoMFColor emissiveColor SoMFFloat shininess SoMFFloat transparency Functions from class SoMaterial: SoMaterial * SoMtlCreate() SoType SoMtlGetClassTypeId() Functions from class SoNode: void SoMtlSetOverride(SoMtl *this, SbBool state) SbBool SoMtlIsOverride(const SoMtl *this) SoNode * SoMtlCopy(const SoMtl *this, SbBool copyConnections = FALSE) SbBool SoMtlAffectsState(const SoMtl *this) SoNode * SoMtlGetByName(const char *name) int SoMtlGetByNameList(const char *name, SoNodeList *list) Functions from class SoFieldContainer: void SoMtlSetToDflts(SoMtl *this) SbBool SoMtlHasDfltVals(const SoMtl *this) SbBool SoMtlFldsAreEq(const SoMtl *this, const SoFieldContainer *fc) void SoMtlCopyFieldVals(SoMtl *this, const SoFieldContainer *fc, SbBool copyConnections = FALSE) SbBool SoMtlSet(SoMtl *this, const char *fieldDataString) void SoMtlGet(SoMtl *this, SbString *fieldDataString) int SoMtlGetFields(const SoMtl *this, SoFieldList *resultList) SoField * SoMtlGetField(const SoMtl *this, const char *fieldName) SbBool SoMtlGetFieldName(const SoMtl *this, const SoField *field, SbName *fieldName) SbBool SoMtlIsNotifyEnabled(const SoMtl *this) SbBool SoMtlEnableNotify(SoMtl *this, SbBool flag) Functions from class SoBase: void SoMtlRef(SoMtl *this) void SoMtlUnref(const SoMtl *this) void SoMtlUnrefNoDelete(const SoMtl *this) void SoMtlTouch(SoMtl *this) SoType SoMtlGetTypeId(const SoMtl *this) SbBool SoMtlIsOfType(const SoMtl *this, SoType type) void SoMtlSetName(SoMtl *this, const char *name) SbName SoMtlGetName(const SoMtl *this) 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. FUNCTIONS SoMaterial * SoMtlCreate() Creates a material node with default settings. SoType SoMtlGetClassTypeId() 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