Project Chrono: chrono::ChVisualMaterial Class Reference

Public Member Functions | Static Public Member Functions | List of all members
chrono::ChVisualMaterial Class Reference
Chrono::Engine » Visual asset objects

## Description

Definition of a visual material.

`#include <ChVisualMaterial.h>`

## Public Member Functions
void | SetAmbientColor (const ChColor &rgb)
void | SetDiffuseColor (const ChColor &rgb)
void | SetSpecularColor (const ChColor &rgb)
void | SetEmissiveColor (const ChColor &rgb)
void | SetEmissivePower (const float &power)
void | SetSpecularExponent (float exponent)
void | SetOpacity (float o)
void | SetIllumination (int i)
void | SetKdTexture (const std::string &filename)
void | SetKsTexture (const std::string &filename)
void | SetKeTexture (const std::string &filename)
void | SetNormalMapTexture (const std::string &filename)
void | SetMetallicTexture (const std::string &filename)
void | SetRoughnessTexture (const std::string &filename)
void | SetOpacityTexture (const std::string &filename)
void | SetWeightTexture (const std::string &filename)
void | SetDisplacementTexture (const std::string &filename)
void | SetAmbientOcclusionTexture (const std::string &filename)
void | SetTextureScale (float scale_x, float scale_y)
| Apply the specified texture scaling to all textures in this material.
void | SetFresnelExp (float exp)
void | SetFresnelMax (float max)
void | SetFresnelMin (float min)
void | SetRoughness (float r)
void | SetMetallic (float m)
void | SetAnisotropy (float a)
void | SetUseSpecularWorkflow (bool s)
void | SetUseHapke (bool h)
| Enable or disable the use of the Hapke material model. We implement the modern hapke model descried in https://doi.org/10.1002/2013JE004580.
void | SetClassID (unsigned short int id)
void | SetInstanceID (unsigned short int id)
void | SetHapkeParameters (float w, float b, float c, float B_s0, float h_s, float phi, float theta_p)
| Set the Hapke material parameters.
const ChColor & | GetAmbientColor () const
const ChColor & | GetDiffuseColor () const
const ChColor & | GetSpecularColor () const
const ChColor & | GetEmissiveColor () const
const float & | GetEmissivePower () const
float | GetSpecularExponent () const
float | GetOpacity () const
int | GetIllumination () const
const std::string & | GetKdTexture () const
const std::string & | GetKsTexture () const
const std::string & | GetKeTexture () const
const std::string & | GetNormalMapTexture () const
const std::string & | GetMetallicTexture () const
const std::string & | GetRoughnessTexture () const
const std::string & | GetOpacityTexture () const
const std::string & | GetWeightTexture () const
const std::string & | GetDisplacementTexture () const
const std::string & | GetAmbientOcclusionTexture () const
const ChVector2f & | GetTextureScale () const
float | GetFresnelExp () const
float | GetFresnelMax () const
float | GetFresnelMin () const
float | GetRoughness () const
float | GetMetallic () const
float | GetAnisotropy () const
bool | GetUseSpecularWorkflow () const
bool | GetUseHapke () const
float | GetHapkeW () const
float | GetHapkeB () const
float | GetHapkeC () const
float | GetHapkeBs0 () const
float | GetHapkeHs () const
float | GetHapkePhi () const
float | GetHapkeRoughness () const
unsigned short int | GetClassID () const
unsigned short int | GetInstanceID () const
virtual void | ArchiveOut (ChArchiveOut &archive_out)
| Method to allow serialization of transient data to archives.
virtual void | ArchiveIn (ChArchiveIn &archive_in)
| Method to allow deserialization of transient data from archives.

## Static Public Member Functions
static std::shared_ptr< ChVisualMaterial > | Default ()
| Create a default material.

## Member Function Documentation

## ◆ SetHapkeParameters()

void chrono::ChVisualMaterial::SetHapkeParameters | ( | float | w,
|  | float | b,
|  | float | c,
|  | float | B_s0,
|  | float | h_s,
|  | float | phi,
|  | float | theta_p )

Set the Hapke material parameters.

Note that in our implementation, we ignore the impact of coherent backscatter.

Parameters

  w | single scattering albedo
  b | shape controlling parameter for the amplitude of backward and forward scatter of particles
  c | weighting factor that controls the contribution of backward and forward scatter.
  B_s0 | Amplitude of the opposition effect caused by shadow hiding
  h_s | Angular width of the opposition effect caused by shadow hiding.
  phi | Fillig factor of the regolith
  theta_p | Effective value of the photometric roughness which controls the surface roughness

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

- D:/W/B/src/chrono-9.0.1/src/chrono/assets/ChVisualMaterial.h
- D:/W/B/src/chrono-9.0.1/src/chrono/assets/ChVisualMaterial.cpp