Open CASCADE Technology 7.8.2.dev
|
This class allows the definition of the type of a surface. Aspect attributes of a 3d face. Keywords: Material, FillArea, Shininess, Ambient, Color, Diffuse, Specular, Transparency, Emissive, ReflectionMode, BackFace, FrontFace, Reflection, Absorption. More...
#include <Graphic3d_MaterialAspect.hxx>
Public Member Functions | |
Graphic3d_MaterialAspect () | |
Creates a material from default values. | |
Graphic3d_MaterialAspect (const Graphic3d_NameOfMaterial theName) | |
Creates a generic material. | |
Graphic3d_NameOfMaterial | Name () const |
Returns the material name (within predefined enumeration). | |
Graphic3d_NameOfMaterial | RequestedName () const |
Returns the material name within predefined enumeration which has been requested (before modifications). | |
const TCollection_AsciiString & | StringName () const |
Returns the given name of this material. This might be: | |
Standard_CString | MaterialName () const |
Returns the given name of this material. This might be: | |
void | SetMaterialName (const TCollection_AsciiString &theName) |
The current material become a "UserDefined" material. Set the name of the "UserDefined" material. | |
void | Reset () |
Resets the material with the original values according to the material name but leave the current color values untouched for the material of type ASPECT. | |
const Quantity_Color & | Color () const |
Returns the diffuse color of the surface. WARNING! This method does NOT return color for Graphic3d_MATERIAL_ASPECT material (color is defined by Graphic3d_Aspects::InteriorColor()). | |
void | SetColor (const Quantity_Color &theColor) |
Modifies the ambient and diffuse color of the surface. WARNING! Has no effect for Graphic3d_MATERIAL_ASPECT material (color should be set to Graphic3d_Aspects::SetInteriorColor()). | |
Standard_ShortReal | Transparency () const |
Returns the transparency coefficient of the surface (1.0 - Alpha); 0.0 means opaque. | |
Standard_ShortReal | Alpha () const |
Returns the alpha coefficient of the surface (1.0 - Transparency); 1.0 means opaque. | |
void | SetTransparency (const Standard_ShortReal theValue) |
Modifies the transparency coefficient of the surface, where 0 is opaque and 1 is fully transparent. Transparency is applicable to materials that have at least one of reflection modes (ambient, diffuse, specular or emissive) enabled. See also SetReflectionModeOn() and SetReflectionModeOff() methods. | |
void | SetAlpha (Standard_ShortReal theValue) |
Modifies the alpha coefficient of the surface, where 1.0 is opaque and 0.0 is fully transparent. | |
const Quantity_Color & | AmbientColor () const |
Returns the ambient color of the surface. | |
void | SetAmbientColor (const Quantity_Color &theColor) |
Modifies the ambient color of the surface. | |
const Quantity_Color & | DiffuseColor () const |
Returns the diffuse color of the surface. | |
void | SetDiffuseColor (const Quantity_Color &theColor) |
Modifies the diffuse color of the surface. | |
const Quantity_Color & | SpecularColor () const |
Returns the specular color of the surface. | |
void | SetSpecularColor (const Quantity_Color &theColor) |
Modifies the specular color of the surface. | |
const Quantity_Color & | EmissiveColor () const |
Returns the emissive color of the surface. | |
void | SetEmissiveColor (const Quantity_Color &theColor) |
Modifies the emissive color of the surface. | |
Standard_ShortReal | Shininess () const |
Returns the luminosity of the surface. | |
void | SetShininess (const Standard_ShortReal theValue) |
Modifies the luminosity of the surface. Warning: Raises MaterialDefinitionError if given value is a negative value or greater than 1.0. | |
void | IncreaseShine (const Standard_ShortReal theDelta) |
Increases or decreases the luminosity. | |
Standard_ShortReal | RefractionIndex () const |
Returns the refraction index of the material. | |
void | SetRefractionIndex (const Standard_ShortReal theValue) |
Modifies the refraction index of the material. Warning: Raises MaterialDefinitionError if given value is a lesser than 1.0. | |
const Graphic3d_BSDF & | BSDF () const |
Returns BSDF (bidirectional scattering distribution function). | |
void | SetBSDF (const Graphic3d_BSDF &theBSDF) |
Modifies the BSDF (bidirectional scattering distribution function). | |
const Graphic3d_PBRMaterial & | PBRMaterial () const |
Returns physically based representation of material. | |
void | SetPBRMaterial (const Graphic3d_PBRMaterial &thePBRMaterial) |
Modifies the physically based representation of material. | |
Standard_Boolean | ReflectionMode (const Graphic3d_TypeOfReflection theType) const |
Returns TRUE if the reflection mode is active, FALSE otherwise. | |
Graphic3d_TypeOfMaterial | MaterialType () const |
Returns material type. | |
Standard_Boolean | MaterialType (const Graphic3d_TypeOfMaterial theType) const |
Returns TRUE if type of this material is equal to specified type. | |
void | SetMaterialType (const Graphic3d_TypeOfMaterial theType) |
Set material type. | |
Standard_Boolean | IsDifferent (const Graphic3d_MaterialAspect &theOther) const |
Returns TRUE if this material differs from specified one. | |
Standard_Boolean | operator!= (const Graphic3d_MaterialAspect &theOther) const |
Returns TRUE if this material differs from specified one. | |
Standard_Boolean | IsEqual (const Graphic3d_MaterialAspect &theOther) const |
Returns TRUE if this material is identical to specified one. | |
Standard_Boolean | operator== (const Graphic3d_MaterialAspect &theOther) const |
Returns TRUE if this material is identical to specified one. | |
void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
Dumps the content of me into the stream. | |
void | SetReflectionModeOff (const Graphic3d_TypeOfReflection theType) |
Deactivates the reflective properties of the surface with specified reflection type. | |
Static Public Member Functions | |
static Standard_Integer | NumberOfMaterials () |
Returns the number of predefined textures. | |
static Standard_CString | MaterialName (const Standard_Integer theRank) |
Returns the name of the predefined material of specified rank within range [1, NumberOfMaterials()]. | |
static Graphic3d_TypeOfMaterial | MaterialType (const Standard_Integer theRank) |
Returns the type of the predefined material of specified rank within range [1, NumberOfMaterials()]. | |
static Standard_Boolean | MaterialFromName (const Standard_CString theName, Graphic3d_NameOfMaterial &theMat) |
Finds the material for specified name. | |
static Graphic3d_NameOfMaterial | MaterialFromName (const Standard_CString theName) |
Returns the material for specified name or Graphic3d_NameOfMaterial_DEFAULT if name is unknown. | |
This class allows the definition of the type of a surface. Aspect attributes of a 3d face. Keywords: Material, FillArea, Shininess, Ambient, Color, Diffuse, Specular, Transparency, Emissive, ReflectionMode, BackFace, FrontFace, Reflection, Absorption.
Graphic3d_MaterialAspect::Graphic3d_MaterialAspect | ( | ) |
Creates a material from default values.
Graphic3d_MaterialAspect::Graphic3d_MaterialAspect | ( | const Graphic3d_NameOfMaterial | theName | ) |
Creates a generic material.
|
inline |
Returns the alpha coefficient of the surface (1.0 - Transparency); 1.0 means opaque.
|
inline |
Returns the ambient color of the surface.
|
inline |
Returns BSDF (bidirectional scattering distribution function).
|
inline |
Returns the diffuse color of the surface. WARNING! This method does NOT return color for Graphic3d_MATERIAL_ASPECT material (color is defined by Graphic3d_Aspects::InteriorColor()).
|
inline |
Returns the diffuse color of the surface.
void Graphic3d_MaterialAspect::DumpJson | ( | Standard_OStream & | theOStream, |
Standard_Integer | theDepth = -1 ) const |
Dumps the content of me into the stream.
|
inline |
Returns the emissive color of the surface.
void Graphic3d_MaterialAspect::IncreaseShine | ( | const Standard_ShortReal | theDelta | ) |
Increases or decreases the luminosity.
theDelta | a signed percentage |
|
inline |
Returns TRUE if this material differs from specified one.
|
inline |
Returns TRUE if this material is identical to specified one.
|
inlinestatic |
Returns the material for specified name or Graphic3d_NameOfMaterial_DEFAULT if name is unknown.
|
static |
Finds the material for specified name.
theName | [in] name to find |
theMat | [out] found material |
|
inline |
Returns the given name of this material. This might be:
|
static |
Returns the name of the predefined material of specified rank within range [1, NumberOfMaterials()].
|
inline |
Returns material type.
|
inline |
Returns TRUE if type of this material is equal to specified type.
|
static |
Returns the type of the predefined material of specified rank within range [1, NumberOfMaterials()].
|
inline |
Returns the material name (within predefined enumeration).
|
inlinestatic |
Returns the number of predefined textures.
|
inline |
Returns TRUE if this material differs from specified one.
|
inline |
Returns TRUE if this material is identical to specified one.
|
inline |
Returns physically based representation of material.
|
inline |
Returns TRUE if the reflection mode is active, FALSE otherwise.
|
inline |
Returns the refraction index of the material.
|
inline |
Returns the material name within predefined enumeration which has been requested (before modifications).
|
inline |
Resets the material with the original values according to the material name but leave the current color values untouched for the material of type ASPECT.
|
inline |
Modifies the alpha coefficient of the surface, where 1.0 is opaque and 0.0 is fully transparent.
void Graphic3d_MaterialAspect::SetAmbientColor | ( | const Quantity_Color & | theColor | ) |
Modifies the ambient color of the surface.
|
inline |
Modifies the BSDF (bidirectional scattering distribution function).
void Graphic3d_MaterialAspect::SetColor | ( | const Quantity_Color & | theColor | ) |
Modifies the ambient and diffuse color of the surface. WARNING! Has no effect for Graphic3d_MATERIAL_ASPECT material (color should be set to Graphic3d_Aspects::SetInteriorColor()).
void Graphic3d_MaterialAspect::SetDiffuseColor | ( | const Quantity_Color & | theColor | ) |
Modifies the diffuse color of the surface.
void Graphic3d_MaterialAspect::SetEmissiveColor | ( | const Quantity_Color & | theColor | ) |
Modifies the emissive color of the surface.
|
inline |
The current material become a "UserDefined" material. Set the name of the "UserDefined" material.
void Graphic3d_MaterialAspect::SetMaterialType | ( | const Graphic3d_TypeOfMaterial | theType | ) |
Set material type.
|
inline |
Modifies the physically based representation of material.
|
inline |
Deactivates the reflective properties of the surface with specified reflection type.
void Graphic3d_MaterialAspect::SetRefractionIndex | ( | const Standard_ShortReal | theValue | ) |
Modifies the refraction index of the material. Warning: Raises MaterialDefinitionError if given value is a lesser than 1.0.
void Graphic3d_MaterialAspect::SetShininess | ( | const Standard_ShortReal | theValue | ) |
Modifies the luminosity of the surface. Warning: Raises MaterialDefinitionError if given value is a negative value or greater than 1.0.
void Graphic3d_MaterialAspect::SetSpecularColor | ( | const Quantity_Color & | theColor | ) |
Modifies the specular color of the surface.
void Graphic3d_MaterialAspect::SetTransparency | ( | const Standard_ShortReal | theValue | ) |
Modifies the transparency coefficient of the surface, where 0 is opaque and 1 is fully transparent. Transparency is applicable to materials that have at least one of reflection modes (ambient, diffuse, specular or emissive) enabled. See also SetReflectionModeOn() and SetReflectionModeOff() methods.
Warning: Raises MaterialDefinitionError if given value is a negative value or greater than 1.0.
|
inline |
Returns the luminosity of the surface.
|
inline |
Returns the specular color of the surface.
|
inline |
Returns the given name of this material. This might be:
|
inline |
Returns the transparency coefficient of the surface (1.0 - Alpha); 0.0 means opaque.