CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
OdGiMaterialTraits Class Referenceabstract

#include <GiMaterial.h>

Inheritance diagram for OdGiMaterialTraits:
OdGiDrawableTraits OdRxObject OdGiMaterialTraitsTaker OdGiMaterialTraits_Stub OdGiTraitsCache< OdGiMaterialTraitsData, OdGiMaterialTraitsTaker, OdGiMaterialTraits::kByBlock|OdGiMaterialTraits::kByLayer >

Public Types

enum  IlluminationModel { kBlinnShader = 0 , kMetalShader }
 
enum  ChannelFlags {
  kNone = 0x00000 , kUseDiffuse = 0x00001 , kUseSpecular = 0x00002 , kUseReflection = 0x00004 ,
  kUseOpacity = 0x00008 , kUseBump = 0x00010 , kUseRefraction = 0x00020 , kUseNormalMap = 0x00040 ,
  kUseEmission = 0x00080 , kUseTint = 0x00100 , kUseAll , kUseAllInternal = (kUseAll | kUseEmission | kUseTint)
}
 
enum  Mode { kRealistic = 0 , kAdvanced }
 
enum  { kByBlock = (OdGiDrawable::kLastFlag << 1) , kByLayer = (OdGiDrawable::kLastFlag << 2) }
 
enum  LuminanceMode { kSelfIllumination = 0 , kLuminance , kEmissionColor }
 
enum  NormalMapMethod { kTangentSpace }
 
enum  GlobalIlluminationMode { kGlobalIlluminationNone , kGlobalIlluminationCast , kGlobalIlluminationReceive , kGlobalIlluminationCastAndReceive }
 
enum  FinalGatherMode { kFinalGatherNone , kFinalGatherCast , kFinalGatherReceive , kFinalGatherCastAndReceive }
 
enum  DiffuseColorMode { kDiffuseRealisticColor = 0 , kDiffuseShadingColor , kDiffuseStyleDependent }
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGiMaterialTraits)
 
virtual void ambient (OdGiMaterialColor &ambientColor) const =0
 
virtual void diffuse (OdGiMaterialColor &diffuseColor, OdGiMaterialMap &diffuseMap) const =0
 
virtual void specular (OdGiMaterialColor &specularColor, OdGiMaterialMap &specularMap, double &glossFactor) const =0
 
virtual void reflection (OdGiMaterialMap &reflectionMap) const =0
 
virtual void opacity (double &opacityPercentage, OdGiMaterialMap &opacityMap) const =0
 
virtual void bump (OdGiMaterialMap &bumpMap) const =0
 
virtual void refraction (double &refractionIndex, OdGiMaterialMap &refractionMap) const =0
 
virtual double translucence () const =0
 
virtual double selfIllumination () const =0
 
virtual double reflectivity () const =0
 
virtual IlluminationModel illuminationModel () const =0
 
virtual ChannelFlags channelFlags () const =0
 
virtual Mode mode () const =0
 
virtual void setAmbient (const OdGiMaterialColor &ambientColor)=0
 
virtual void setDiffuse (const OdGiMaterialColor &diffuseColor, const OdGiMaterialMap &diffuseMap)=0
 
virtual void setSpecular (const OdGiMaterialColor &specularColor, const OdGiMaterialMap &specularMap, double glossFactor)=0
 
virtual void setReflection (const OdGiMaterialMap &reflectionMap)=0
 
virtual void setOpacity (double opacityPercentage, const OdGiMaterialMap &opacityMap)=0
 
virtual void setBump (const OdGiMaterialMap &bumpMap)=0
 
virtual void setRefraction (double refractionIndex, const OdGiMaterialMap &refractionMap)=0
 
virtual void setTranslucence (double value)=0
 
virtual void setSelfIllumination (double value)=0
 
virtual void setReflectivity (double value)=0
 
virtual void setIlluminationModel (IlluminationModel model)=0
 
virtual void setChannelFlags (ChannelFlags flags)=0
 
virtual void setMode (Mode value)=0
 
virtual void setColorBleedScale (double scale)=0
 
virtual double colorBleedScale () const =0
 
virtual void setIndirectBumpScale (double scale)=0
 
virtual double indirectBumpScale () const =0
 
virtual void setReflectanceScale (double scale)=0
 
virtual double reflectanceScale () const =0
 
virtual void setTransmittanceScale (double scale)=0
 
virtual double transmittanceScale () const =0
 
virtual void setTwoSided (bool flag)=0
 
virtual bool twoSided () const =0
 
virtual void setLuminanceMode (LuminanceMode mode)=0
 
virtual LuminanceMode luminanceMode () const =0
 
virtual void setLuminance (double value)=0
 
virtual double luminance () const =0
 
virtual void setNormalMap (const OdGiMaterialMap &normalMap, NormalMapMethod method, double strength)=0
 
virtual void normalMap (OdGiMaterialMap &normalMap, NormalMapMethod &method, double &strength) const =0
 
virtual void setGlobalIllumination (GlobalIlluminationMode mode)=0
 
virtual GlobalIlluminationMode globalIllumination () const =0
 
virtual void setFinalGather (FinalGatherMode mode)=0
 
virtual FinalGatherMode finalGather () const =0
 
virtual void setEmission (const OdGiMaterialColor &emissionColor, const OdGiMaterialMap &emissionMap)=0
 
virtual void emission (OdGiMaterialColor &emissionColor, OdGiMaterialMap &emissionMap) const =0
 
virtual void setTint (const OdGiMaterialColor &tintColor)=0
 
virtual void tint (OdGiMaterialColor &tintColor) const =0
 
virtual void setShadingAmbient (const OdGiMaterialColor &ambientColor)=0
 
virtual void shadingAmbient (OdGiMaterialColor &ambientColor) const =0
 
virtual void setShadingDiffuse (const OdGiMaterialColor &diffuseColor)=0
 
virtual void shadingDiffuse (OdGiMaterialColor &diffuseColor) const =0
 
virtual void setShadingSpecular (const OdGiMaterialColor &specularColor)=0
 
virtual void shadingSpecular (OdGiMaterialColor &specularColor) const =0
 
virtual void setShadingOpacity (double opacityPercentage)=0
 
virtual void shadingOpacity (double &opacityPercentage) const =0
 
virtual void setDiffuseColorMode (DiffuseColorMode diffuseColorMode)=0
 
virtual DiffuseColorMode diffuseColorMode () const =0
 
virtual void setShadowsOpacityEffect (double effectPercentage, double nonShadowLightsMergeEffect=1.0)=0
 
virtual double shadowsOpacityEffect (double &nonShadowLightsMergeEffect) const =0
 
virtual void setSpecularHighlightingOverride (double overrideVal)=0
 
virtual double specularHighlightingOverride () const =0
 
- Public Member Functions inherited from OdGiDrawableTraits
 ODRX_DECLARE_MEMBERS (OdGiDrawableTraits)
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Detailed Description

This class defines the interface to material traits for the vectorization process. Corresponding C++ library: TD_Gi <group OdGi_Classes>

See also
<link tv_working_with_attributes_materials, Work with Materials>

Definition at line 47 of file GiMaterial.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kByBlock 
kByLayer 

Definition at line 109 of file GiMaterial.h.

◆ ChannelFlags

Specifies material channels.

Enumerator
kNone 

No material channels enabled.

kUseDiffuse 

Enables diffuse material channel.

kUseSpecular 

Enables specular material channel.

kUseReflection 

Enables reflection material channel.

kUseOpacity 

Enables opacity material channel.

kUseBump 

Enables bump material channel.

kUseRefraction 

Enables refraction material channel.

kUseNormalMap 

Enables normal map material channel.

kUseEmission 

Enables emission material channel.

kUseTint 

Enables tint material channel.

kUseAll 

Enables all material channels.

kUseAllInternal 

Enables all material channels including extension channels.

Definition at line 67 of file GiMaterial.h.

◆ DiffuseColorMode

Specifies the diffuse color mode.

Enumerator
kDiffuseRealisticColor 

Use the color specified in the diffuse material channel.

kDiffuseShadingColor 

Use the color specified by the setShadingDiffuse() method.

kDiffuseStyleDependent 

Chosen color depends on the active visual style.

Definition at line 173 of file GiMaterial.h.

◆ FinalGatherMode

Specifies the final gathering mode.

Enumerator
kFinalGatherNone 

No final gathering.

kFinalGatherCast 

The final gathering is casting.

kFinalGatherReceive 

The final gathering is receiving.

kFinalGatherCastAndReceive 

The final gathering is casting and receiving.

Definition at line 157 of file GiMaterial.h.

◆ GlobalIlluminationMode

Specifies the global illumination.

Enumerator
kGlobalIlluminationNone 

No global illumination.

kGlobalIlluminationCast 

The global illumination is casting light.

kGlobalIlluminationReceive 

The global illumination is receiving light.

kGlobalIlluminationCastAndReceive 

The global illumination is casting and receiving light.

Definition at line 142 of file GiMaterial.h.

◆ IlluminationModel

This enumeration specifies an illumination model used in the rendering process when working with materials.

Enumerator
kBlinnShader 

Blinn shader uses the light's color to determine the reflection color.

kMetalShader 

Metal shader calculates the reflected light's color using the material's diffuse color and the light's color.

Definition at line 56 of file GiMaterial.h.

◆ LuminanceMode

Specifies the luminance modes.

Enumerator
kSelfIllumination 

Compute luminance from self-illumination parameters.

kLuminance 

Use luminance specified by the setLuminance() method.

kEmissionColor 

Compute luminance using an emission material channel.

Definition at line 120 of file GiMaterial.h.

◆ Mode

Specifies the material model.

Enumerator
kRealistic 

Realistic material model.

kAdvanced 

Advanced material model.

Definition at line 100 of file GiMaterial.h.

◆ NormalMapMethod

Specifies the normal maps.

Enumerator
kTangentSpace 

Method of tangent spaces is used to compute the normal map.

Definition at line 133 of file GiMaterial.h.

Member Function Documentation

◆ ambient()

virtual void OdGiMaterialTraits::ambient ( OdGiMaterialColor ambientColor) const
pure virtual

Returns the ambient color component of this MaterialTraits object.

Parameters
ambientColor[out] Receives the ambient color.
Remarks
The ambient color component is most apparent when there is no direct illumination on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ bump()

virtual void OdGiMaterialTraits::bump ( OdGiMaterialMap bumpMap) const
pure virtual

Returns the bump component of this MaterialTraits object.

Parameters
bumpMap[out] Receives the bump map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ channelFlags()

virtual ChannelFlags OdGiMaterialTraits::channelFlags ( ) const
pure virtual

Returns the material channels in use by this MaterialTraits object.

Returns
a set of flags that represent which channels are used.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ colorBleedScale()

virtual double OdGiMaterialTraits::colorBleedScale ( ) const
pure virtual

Returns the color bleed scale of this MaterialTraits object.

Returns
color bleed scale as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ diffuse()

virtual void OdGiMaterialTraits::diffuse ( OdGiMaterialColor diffuseColor,
OdGiMaterialMap diffuseMap 
) const
pure virtual

Returns the diffuse component of this MaterialTraits object.

Parameters
diffuseColor[out] Receives the diffuse color.
diffuseMap[out] Receives the diffuse map.
Remarks
The diffuse component is most apparent when there is direct illumination on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ diffuseColorMode()

virtual DiffuseColorMode OdGiMaterialTraits::diffuseColorMode ( ) const
pure virtual

Returns current diffuse, ambient, specular color and opacity behavior.

Returns
diffuse color mode as a value from the DiffuseColorMode enumeration.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ emission()

virtual void OdGiMaterialTraits::emission ( OdGiMaterialColor emissionColor,
OdGiMaterialMap emissionMap 
) const
pure virtual

Returns the emission component of this MaterialTraits object.

Parameters
emissionColor[out] Receives the emission color.
emissionMap[out] Receives the emission map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ finalGather()

virtual FinalGatherMode OdGiMaterialTraits::finalGather ( ) const
pure virtual

Returns the final gather mode of this MaterialTraits object.

Returns
final gathering mode as a value from the FinalGatherMode enumeration.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ globalIllumination()

virtual GlobalIlluminationMode OdGiMaterialTraits::globalIllumination ( ) const
pure virtual

Returns the global illumination mode of this MaterialTraits object.

Returns
global illumination mode as a value from the GlobalIlluminationMode enumeration.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ illuminationModel()

virtual IlluminationModel OdGiMaterialTraits::illuminationModel ( ) const
pure virtual

Returns the illumination model of this MaterialTraits object.

Returns
one of two shaders that define illumination model: kBlinnShader or kMetalShader.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ indirectBumpScale()

virtual double OdGiMaterialTraits::indirectBumpScale ( ) const
pure virtual

Returns the indirect bump scale of this MaterialTraits object.

Returns
indirect bump scale as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ luminance()

virtual double OdGiMaterialTraits::luminance ( ) const
pure virtual

Returns the luminance of this MaterialTraits object.

Returns
luminance amount as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ luminanceMode()

virtual LuminanceMode OdGiMaterialTraits::luminanceMode ( ) const
pure virtual

Returns the luminance mode of this MaterialTraits object.

Returns
a value from the LuminanceMode enumeration that represents one of the luminance modes.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ mode()

virtual Mode OdGiMaterialTraits::mode ( ) const
pure virtual

Returns the mode of this MaterialTraits object.

Returns
one of two render modes: kRealistic or kAdvanced.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ normalMap()

virtual void OdGiMaterialTraits::normalMap ( OdGiMaterialMap normalMap,
NormalMapMethod method,
double &  strength 
) const
pure virtual

Retrieves the normalMap component of this MaterialTraits object.

Parameters
normalMap[out] Receives the normal map.
method[out] Receives the normal map method.
strength[out] Receives the normal map strength factor.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ ODRX_DECLARE_MEMBERS()

OdGiMaterialTraits::ODRX_DECLARE_MEMBERS ( OdGiMaterialTraits  )

◆ opacity()

virtual void OdGiMaterialTraits::opacity ( double &  opacityPercentage,
OdGiMaterialMap opacityMap 
) const
pure virtual

Returns the opacity component of this MaterialTraits object.

Parameters
opacityPercentage[out] Receives the opacity percentage.
opacityMap[out] Receives the opacity map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ reflectanceScale()

virtual double OdGiMaterialTraits::reflectanceScale ( ) const
pure virtual

Returns the reflectance scale of this MaterialTraits object.

Returns
reference scale as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ reflection()

virtual void OdGiMaterialTraits::reflection ( OdGiMaterialMap reflectionMap) const
pure virtual

Returns the reflection component of this MaterialTraits object.

Parameters
reflectionMap[out] Receives the reflection map.
Remarks
The reflection component creates a mirror finish on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ reflectivity()

virtual double OdGiMaterialTraits::reflectivity ( ) const
pure virtual

Returns the reflectivity of this MaterialTraits object.

Returns
reflectivity amount as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ refraction()

virtual void OdGiMaterialTraits::refraction ( double &  refractionIndex,
OdGiMaterialMap refractionMap 
) const
pure virtual

Returns the refraction component of this MaterialTraits object.

Parameters
refractionIndex[out] Receives the refraction index.
refractionMap[out] Receives the refraction map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ selfIllumination()

virtual double OdGiMaterialTraits::selfIllumination ( ) const
pure virtual

Returns the self illumination of this MaterialTraits object.

Returns
translucence amount as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setAmbient()

virtual void OdGiMaterialTraits::setAmbient ( const OdGiMaterialColor ambientColor)
pure virtual

Sets the ambient color component of this MaterialTraits object.

Parameters
ambientColor[in] Ambient color.
Remarks
The ambient color component is most apparent when there is no direct illumination on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setBump()

virtual void OdGiMaterialTraits::setBump ( const OdGiMaterialMap bumpMap)
pure virtual

Sets the bump component of this MaterialTraits object.

Parameters
bumpMap[in] Bump map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setChannelFlags()

virtual void OdGiMaterialTraits::setChannelFlags ( ChannelFlags  flags)
pure virtual

Sets the material channels to be used by this MaterialTraits object.

Parameters
value[in] Channels to be used.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setColorBleedScale()

virtual void OdGiMaterialTraits::setColorBleedScale ( double  scale)
pure virtual

Sets the color bleed scale of this MaterialTraits object.

Parameters
scale[in] Color bleed scale.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setDiffuse()

virtual void OdGiMaterialTraits::setDiffuse ( const OdGiMaterialColor diffuseColor,
const OdGiMaterialMap diffuseMap 
)
pure virtual

Sets the diffuse component of this MaterialTraits object.

Parameters
diffuseColor[in] Diffuse color.
diffuseMap[in] Diffuse map.
Remarks
The diffuse component is most apparent when there is direct illumination on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setDiffuseColorMode()

virtual void OdGiMaterialTraits::setDiffuseColorMode ( DiffuseColorMode  diffuseColorMode)
pure virtual

Sets diffuse, ambient, specual color and opacity behavior.

Parameters
diffuseColorMode[in] New setting for diffuse color and opacity mode.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setEmission()

virtual void OdGiMaterialTraits::setEmission ( const OdGiMaterialColor emissionColor,
const OdGiMaterialMap emissionMap 
)
pure virtual

Sets the emission component of this MaterialTraits object.

Parameters
emissionColor[in] Emission color.
emissionMap[in] Emission map.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setFinalGather()

virtual void OdGiMaterialTraits::setFinalGather ( FinalGatherMode  mode)
pure virtual

Sets the final gather mode of this MaterialTraits object.

Parameters
mode[in] Final gather mode.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setGlobalIllumination()

virtual void OdGiMaterialTraits::setGlobalIllumination ( GlobalIlluminationMode  mode)
pure virtual

Sets the global illumination mode of this MaterialTraits object.

Parameters
mode[in] Global illumination mode.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setIlluminationModel()

virtual void OdGiMaterialTraits::setIlluminationModel ( IlluminationModel  model)
pure virtual

Sets the illumination model of this MaterialTraits object.

Parameters
model[in] Illumination model.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setIndirectBumpScale()

virtual void OdGiMaterialTraits::setIndirectBumpScale ( double  scale)
pure virtual

Sets the indirect bump scale of this MaterialTraits object.

Parameters
scale[in] Indirect bump scale.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setLuminance()

virtual void OdGiMaterialTraits::setLuminance ( double  value)
pure virtual

Sets the luminance of this MaterialTraits object.

Parameters
value[in] Luminance value.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setLuminanceMode()

virtual void OdGiMaterialTraits::setLuminanceMode ( LuminanceMode  mode)
pure virtual

Sets the luminance mode of this MaterialTraits object.

Parameters
mode[in] Luminance mode.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setMode()

virtual void OdGiMaterialTraits::setMode ( Mode  value)
pure virtual

Sets the mode of this MaterialTraits object.

Parameters
value[in] Mode value.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setNormalMap()

virtual void OdGiMaterialTraits::setNormalMap ( const OdGiMaterialMap normalMap,
NormalMapMethod  method,
double  strength 
)
pure virtual

Sets the normalMap component of this MaterialTraits object.

Parameters
normalMap[in] Normal map.
method[in] Normal map method.
strength[in] Strength factor.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setOpacity()

virtual void OdGiMaterialTraits::setOpacity ( double  opacityPercentage,
const OdGiMaterialMap opacityMap 
)
pure virtual

Sets the opacity component of this MaterialTraits object.

Parameters
opacityPercentage[in] Opacity percentage.
opacityMap[in] Opacity map.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setReflectanceScale()

virtual void OdGiMaterialTraits::setReflectanceScale ( double  scale)
pure virtual

Sets the reflectance scale of this MaterialTraits object.

Parameters
scale[in] Reflectance scale.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setReflection()

virtual void OdGiMaterialTraits::setReflection ( const OdGiMaterialMap reflectionMap)
pure virtual

Sets the reflection component of this MaterialTraits object.

Parameters
reflectionMap[in] Reflection map.
Remarks
The reflection component creates a mirror finish on the entity.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setReflectivity()

virtual void OdGiMaterialTraits::setReflectivity ( double  value)
pure virtual

Sets the reflectivity of this MaterialTraits object.

Parameters
value[in] Reflectivity value.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setRefraction()

virtual void OdGiMaterialTraits::setRefraction ( double  refractionIndex,
const OdGiMaterialMap refractionMap 
)
pure virtual

Sets the refraction component of this MaterialTraits object.

Parameters
refractionIndex[in] Refraction index.
refractionMap[in] Refraction map.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setSelfIllumination()

virtual void OdGiMaterialTraits::setSelfIllumination ( double  value)
pure virtual

Sets the self illumination of this MaterialTraits object.

Parameters
value[in] Self illumination level.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setShadingAmbient()

virtual void OdGiMaterialTraits::setShadingAmbient ( const OdGiMaterialColor ambientColor)
pure virtual

Sets the shading ambient color component of this MaterialTraits object.

Parameters
ambientColor[in] Shading ambient color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setShadingDiffuse()

virtual void OdGiMaterialTraits::setShadingDiffuse ( const OdGiMaterialColor diffuseColor)
pure virtual

Sets the shading diffuse color component of this MaterialTraits object.

Parameters
diffuseColor[in] Shading diffuse color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setShadingOpacity()

virtual void OdGiMaterialTraits::setShadingOpacity ( double  opacityPercentage)
pure virtual

Sets the shading opacity component of this MaterialTraits object.

Parameters
opacityPercentage[in] Shading opacity percentage.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setShadingSpecular()

virtual void OdGiMaterialTraits::setShadingSpecular ( const OdGiMaterialColor specularColor)
pure virtual

Sets the shading specular color component of this MaterialTraits object.

Parameters
specularColor[in] Shading specular color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setShadowsOpacityEffect()

virtual void OdGiMaterialTraits::setShadowsOpacityEffect ( double  effectPercentage,
double  nonShadowLightsMergeEffect = 1.0 
)
pure virtual

Sets coefficient of opacity influence onto received shadows.

Parameters
effectPercentage[in] Coefficient in 0.0-1.0 range.
nonShadowLightsMergeEffect[in] Setup amount in 0.0-1.0 range of lights influence which is doesn't cast shadows.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setSpecular()

virtual void OdGiMaterialTraits::setSpecular ( const OdGiMaterialColor specularColor,
const OdGiMaterialMap specularMap,
double  glossFactor 
)
pure virtual

Sets the specular component of this MaterialTraits object.

Parameters
specularColor[in] Specular color.
specularMap[in] Specular map.
glossFactor[in] Gloss factor.
Remarks
The specular component depends on the viewer's eye position and represents light source reflection highlights on the entity surface.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setSpecularHighlightingOverride()

virtual void OdGiMaterialTraits::setSpecularHighlightingOverride ( double  overrideVal)
pure virtual

Setup specular highlighting behavior override.

Parameters
overrideVal[in] Specular highlighting override value.
Remarks
Positive override value means absolute specular highlighting factor. Zero override value disables specular highlighting override. Negative override value provides maximal speculat highlighting factor and means that highlighting factor must be got from Visual Style.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setTint()

virtual void OdGiMaterialTraits::setTint ( const OdGiMaterialColor tintColor)
pure virtual

Sets the tint component of this MaterialTraits object.

Parameters
tintColor[in] Tint color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ setTranslucence()

virtual void OdGiMaterialTraits::setTranslucence ( double  value)
pure virtual

Sets the translucence of this MaterialTraits object.

Parameters
value[in] Translucence value.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setTransmittanceScale()

virtual void OdGiMaterialTraits::setTransmittanceScale ( double  scale)
pure virtual

Sets the transmittance scale of this MaterialTraits object.

Parameters
scale[in] Transmittance scale.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ setTwoSided()

virtual void OdGiMaterialTraits::setTwoSided ( bool  flag)
pure virtual

Sets the two-sided mode of this MaterialTraits object.

Parameters
flag[in] Two-sided mode flag.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ shadingAmbient()

virtual void OdGiMaterialTraits::shadingAmbient ( OdGiMaterialColor ambientColor) const
pure virtual

Returns the shading ambient color component of this MaterialTraits object.

Parameters
ambientColor[out] Receives the shading ambient color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ shadingDiffuse()

virtual void OdGiMaterialTraits::shadingDiffuse ( OdGiMaterialColor diffuseColor) const
pure virtual

Returns the shading diffuse color component of this MaterialTraits object.

Parameters
diffuseColor[out] Receives the shading diffuse color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ shadingOpacity()

virtual void OdGiMaterialTraits::shadingOpacity ( double &  opacityPercentage) const
pure virtual

Returns the shading opacity component of this MaterialTraits object.

Parameters
opacityPercentage[out] Receives the shading opacity percentage.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ shadingSpecular()

virtual void OdGiMaterialTraits::shadingSpecular ( OdGiMaterialColor specularColor) const
pure virtual

Returns the shading specular color component of this MaterialTraits object.

Parameters
specularColor[out] Receives the shading specular color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ shadowsOpacityEffect()

virtual double OdGiMaterialTraits::shadowsOpacityEffect ( double &  nonShadowLightsMergeEffect) const
pure virtual

Returns coefficient of opacity influence onto received shadows. Coefficient set to 1.0 by default, which is means that shadows opacity will fully depends from material opacity.

Parameters
nonShadowLightsMergeEffect[out] Amount in 0.0-1.0 range of lights influence which is doesn't cast shadows.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ specular()

virtual void OdGiMaterialTraits::specular ( OdGiMaterialColor specularColor,
OdGiMaterialMap specularMap,
double &  glossFactor 
) const
pure virtual

Returns the specular component of this MaterialTraits object.

Parameters
specularColor[out] Receives the specular color.
specularMap[out] Receives the specular map.
glossFactor[out] Receives the gloss factor.
Remarks
The specular component depends on the viewer's eye position and represents the light source reflection highlights on the entity surface.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ specularHighlightingOverride()

virtual double OdGiMaterialTraits::specularHighlightingOverride ( ) const
pure virtual

Returns specular highlighting behavior override.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ tint()

virtual void OdGiMaterialTraits::tint ( OdGiMaterialColor tintColor) const
pure virtual

Returns the tint component of this MaterialTraits object.

Parameters
tintColor[out] Receives the tint color.

Implemented in OdGiMaterialTraits_Stub, and OdGiMaterialTraitsTaker.

◆ translucence()

virtual double OdGiMaterialTraits::translucence ( ) const
pure virtual

Returns the translucence of this MaterialTraits object.

Returns
translucence amount as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ transmittanceScale()

virtual double OdGiMaterialTraits::transmittanceScale ( ) const
pure virtual

Returns the transmittance scale of this MaterialTraits object.

Returns
transmittance scale as a value of the double type.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.

◆ twoSided()

virtual bool OdGiMaterialTraits::twoSided ( ) const
pure virtual

Returns the two-sided mode of this MaterialTraits object.

Implemented in OdGiMaterialTraitsTaker, and OdGiMaterialTraits_Stub.


The documentation for this class was generated from the following file: