ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::visualization::rendering::Material Class Reference

#include <Material.h>

Public Types

using TextureMaps = std::unordered_map< std::string, t::geometry::Image >
 
using ScalarPropertyMap = std::unordered_map< std::string, float >
 
using VectorPropertyMap = std::unordered_map< std::string, Eigen::Vector4f, std::hash< std::string >, std::equal_to< std::string >, Eigen::aligned_allocator< std::pair< const std::string, Eigen::Vector4f > >>
 

Public Member Functions

 Material ()=default
 Create an empty, invalid material. More...
 
 Material (const Material &mat)=default
 
Materialoperator= (const Material &other)=default
 
 Material (const std::string &material_name)
 Create an empty but valid material for the specified material name. More...
 
void SetDefaultProperties ()
 
bool IsValid () const
 
const std::string & GetMaterialName () const
 Get the name of the material. More...
 
std::string ToString () const
 String reprentation for printing. More...
 
const TextureMapsGetTextureMaps () const
 Returns the texture map map. More...
 
const t::geometry::ImageGetTextureMap (const std::string &key) const
 
const ScalarPropertyMapGetScalarProperties () const
 Returns the map of scalar properties. More...
 
float GetScalarProperty (const std::string &key) const
 
const VectorPropertyMapGetVectorProperties () const
 Returns the map of vector properties. More...
 
Eigen::Vector4f GetVectorProperty (const std::string &key) const
 
void SetTextureMap (const std::string &key, const t::geometry::Image &image)
 
void SetScalarProperty (const std::string &key, float value)
 
void SetVectorProperty (const std::string &key, const Eigen::Vector4f &value)
 
void SetMaterialName (const std::string &material_name)
 Set material name. The material name should match the name of a built. More...
 
bool HasTextureMap (const std::string &key) const
 
bool HasScalarProperty (const std::string &key) const
 
bool HasVectorProperty (const std::string &key) const
 
const t::geometry::ImageGetAlbedoMap () const
 
const t::geometry::ImageGetNormalMap () const
 
const t::geometry::ImageGetAOMap () const
 
const t::geometry::ImageGetMetallicMap () const
 
const t::geometry::ImageGetRoughnessMap () const
 
const t::geometry::ImageGetReflectanceMap () const
 
const t::geometry::ImageGetClearcoatMap () const
 
const t::geometry::ImageGetClearcoatRoughnessMap () const
 
const t::geometry::ImageGetAnisotropyMap () const
 
const t::geometry::ImageGetAORoughnessMetalMap () const
 
bool HasAlbedoMap () const
 
bool HasNormalMap () const
 
bool HasAOMap () const
 
bool HasMetallicMap () const
 
bool HasRoughnessMap () const
 
bool HasReflectanceMap () const
 
bool HasClearcoatMap () const
 
bool HasClearcoatRoughnessMap () const
 
bool HasAnisotropyMap () const
 
bool HasAORoughnessMetalMap () const
 
void SetAlbedoMap (const t::geometry::Image &image)
 
void SetNormalMap (const t::geometry::Image &image)
 
void SetAOMap (const t::geometry::Image &image)
 
void SetMetallicMap (const t::geometry::Image &image)
 
void SetRoughnessMap (const t::geometry::Image &image)
 
void SetReflectanceMap (const t::geometry::Image &image)
 
void SetClearcoatMap (const t::geometry::Image &image)
 
void SetClearcoatRoughnessMap (const t::geometry::Image &image)
 
void SetAnisotropyMap (const t::geometry::Image &image)
 
void SetAORoughnessMetalMap (const t::geometry::Image &image)
 
Eigen::Vector4f GetBaseColor () const
 
float GetBaseMetallic () const
 
float GetBaseRoughness () const
 
float GetBaseReflectance () const
 
float GetBaseClearcoat () const
 
float GetBaseClearcoatRoughness () const
 
float GetAnisotropy () const
 
float GetThickness () const
 
float GetTransmission () const
 
Eigen::Vector4f GetAbsorptionColor () const
 
float GetAbsorptionDistance () const
 
Eigen::Vector4f GetEmissiveColor () const
 
bool HasBaseColor () const
 
bool HasBaseMetallic () const
 
bool HasBaseRoughness () const
 
bool HasBaseReflectance () const
 
bool HasBaseClearcoat () const
 
bool HasBaseClearcoatRoughness () const
 
bool HasAnisotropy () const
 
bool HasThickness () const
 
bool HasTransmission () const
 
bool HasAbsorptionColor () const
 
bool HasAbsorptionDistance () const
 
bool HasEmissiveColor () const
 
void SetBaseColor (const Eigen::Vector4f &value)
 
void SetBaseMetallic (float value)
 
void SetBaseRoughness (float value)
 
void SetBaseReflectance (float value)
 
void SetBaseClearcoat (float value)
 
void SetBaseClearcoatRoughness (float value)
 
void SetAnisotropy (float value)
 
void SetThickness (float value)
 
void SetTransmission (float value)
 
void SetAbsorptionColor (const Eigen::Vector4f &value)
 
void SetAbsorptionDistance (float value)
 
void SetEmissiveColor (const Eigen::Vector4f &value)
 
float GetPointSize () const
 
float GetLineWidth () const
 
bool HasPointSize () const
 
bool HasLineWidth () const
 
void SetPointSize (float value)
 
void SetLineWidth (float value)
 
void ToMaterialRecord (MaterialRecord &record) const
 Fills a legacy MaterialRecord constructed from this Material. More...
 

Static Public Member Functions

static Material FromMaterialRecord (const MaterialRecord &mat)
 Convert from MaterialRecord. More...
 

Detailed Description

Definition at line 22 of file Material.h.

Member Typedef Documentation

◆ ScalarPropertyMap

using cloudViewer::visualization::rendering::Material::ScalarPropertyMap = std::unordered_map<std::string, float>

Definition at line 25 of file Material.h.

◆ TextureMaps

Definition at line 24 of file Material.h.

◆ VectorPropertyMap

using cloudViewer::visualization::rendering::Material::VectorPropertyMap = std::unordered_map< std::string, Eigen::Vector4f, std::hash<std::string>, std::equal_to<std::string>, Eigen::aligned_allocator< std::pair<const std::string, Eigen::Vector4f> >>

Definition at line 26 of file Material.h.

Constructor & Destructor Documentation

◆ Material() [1/3]

cloudViewer::visualization::rendering::Material::Material ( )
default

Create an empty, invalid material.

◆ Material() [2/3]

cloudViewer::visualization::rendering::Material::Material ( const Material mat)
default

◆ Material() [3/3]

cloudViewer::visualization::rendering::Material::Material ( const std::string &  material_name)
inline

Create an empty but valid material for the specified material name.

Definition at line 45 of file Material.h.

Member Function Documentation

◆ FromMaterialRecord()

Material cloudViewer::visualization::rendering::Material::FromMaterialRecord ( const MaterialRecord mat)
static

Convert from MaterialRecord.

Definition at line 149 of file Material.cpp.

References cloudViewer::visualization::rendering::MaterialRecord::absorption_distance, cloudViewer::visualization::rendering::MaterialRecord::albedo_img, cloudViewer::visualization::rendering::MaterialRecord::anisotropy_img, cloudViewer::visualization::rendering::MaterialRecord::ao_img, cloudViewer::visualization::rendering::MaterialRecord::ao_rough_metal_img, cloudViewer::visualization::rendering::MaterialRecord::base_anisotropy, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat_roughness, cloudViewer::visualization::rendering::MaterialRecord::base_color, cloudViewer::visualization::rendering::MaterialRecord::base_metallic, cloudViewer::visualization::rendering::MaterialRecord::base_reflectance, cloudViewer::visualization::rendering::MaterialRecord::base_roughness, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_img, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_roughness_img, cloudViewer::visualization::rendering::MaterialRecord::emissive_color, cloudViewer::visualization::rendering::MaterialRecord::line_width, cloudViewer::visualization::rendering::MaterialRecord::metallic_img, cloudViewer::visualization::rendering::MaterialRecord::normal_img, cloudViewer::visualization::rendering::MaterialRecord::point_size, cloudViewer::visualization::rendering::MaterialRecord::reflectance_img, cloudViewer::visualization::rendering::MaterialRecord::roughness_img, SetAbsorptionDistance(), SetAlbedoMap(), SetAnisotropy(), SetAnisotropyMap(), SetAOMap(), SetAORoughnessMetalMap(), SetBaseClearcoat(), SetBaseClearcoatRoughness(), SetBaseColor(), SetBaseMetallic(), SetBaseReflectance(), SetBaseRoughness(), SetClearcoatMap(), SetClearcoatRoughnessMap(), SetEmissiveColor(), SetLineWidth(), SetMetallicMap(), SetNormalMap(), SetPointSize(), SetReflectanceMap(), SetRoughnessMap(), SetThickness(), SetTransmission(), cloudViewer::visualization::rendering::MaterialRecord::shader, cloudViewer::visualization::rendering::MaterialRecord::thickness, and cloudViewer::visualization::rendering::MaterialRecord::transmission.

Referenced by cloudViewer::t::geometry::TriangleMesh::FromTriangleMeshModel().

◆ GetAbsorptionColor()

Eigen::Vector4f cloudViewer::visualization::rendering::Material::GetAbsorptionColor ( ) const
inline

Definition at line 254 of file Material.h.

References GetVectorProperty().

Referenced by ToMaterialRecord().

◆ GetAbsorptionDistance()

float cloudViewer::visualization::rendering::Material::GetAbsorptionDistance ( ) const
inline

Definition at line 257 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetAlbedoMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetAlbedoMap ( ) const
inline

The following are convenience methods for common PBR material properties

Definition at line 160 of file Material.h.

References GetTextureMap().

Referenced by cloudViewer::t::geometry::TriangleMesh::SamplePointsUniformly(), and ToMaterialRecord().

◆ GetAnisotropy()

float cloudViewer::visualization::rendering::Material::GetAnisotropy ( ) const
inline

Definition at line 251 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetAnisotropyMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetAnisotropyMap ( ) const
inline

Definition at line 184 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetAOMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetAOMap ( ) const
inline

Definition at line 166 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetAORoughnessMetalMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetAORoughnessMetalMap ( ) const
inline

Ambient occlusion, roughness, and metallic maps in a single 3 channel texture. Commonly used in glTF models.

Definition at line 189 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetBaseClearcoat()

float cloudViewer::visualization::rendering::Material::GetBaseClearcoat ( ) const
inline

Definition at line 247 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetBaseClearcoatRoughness()

float cloudViewer::visualization::rendering::Material::GetBaseClearcoatRoughness ( ) const
inline

Definition at line 248 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetBaseColor()

Eigen::Vector4f cloudViewer::visualization::rendering::Material::GetBaseColor ( ) const
inline

Definition at line 239 of file Material.h.

References GetVectorProperty().

Referenced by ToMaterialRecord().

◆ GetBaseMetallic()

float cloudViewer::visualization::rendering::Material::GetBaseMetallic ( ) const
inline

Definition at line 242 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetBaseReflectance()

float cloudViewer::visualization::rendering::Material::GetBaseReflectance ( ) const
inline

Definition at line 244 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetBaseRoughness()

float cloudViewer::visualization::rendering::Material::GetBaseRoughness ( ) const
inline

Definition at line 243 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetClearcoatMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetClearcoatMap ( ) const
inline

Definition at line 178 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetClearcoatRoughnessMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetClearcoatRoughnessMap ( ) const
inline

Definition at line 181 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetEmissiveColor()

Eigen::Vector4f cloudViewer::visualization::rendering::Material::GetEmissiveColor ( ) const
inline

Definition at line 260 of file Material.h.

References GetVectorProperty().

Referenced by ToMaterialRecord().

◆ GetLineWidth()

float cloudViewer::visualization::rendering::Material::GetLineWidth ( ) const
inline

Definition at line 323 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetMaterialName()

const std::string& cloudViewer::visualization::rendering::Material::GetMaterialName ( ) const
inline

Get the name of the material.

Definition at line 57 of file Material.h.

Referenced by cloudViewer::io::rpc::AddMaterialToMeshData(), cloudViewer::io::rpc::SetTriangleMesh(), and ToMaterialRecord().

◆ GetMetallicMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetMetallicMap ( ) const
inline

Definition at line 169 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetNormalMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetNormalMap ( ) const
inline

Definition at line 163 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetPointSize()

float cloudViewer::visualization::rendering::Material::GetPointSize ( ) const
inline

The following are convenience methods for Pointclouds and LineSet shaders

Definition at line 322 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetReflectanceMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetReflectanceMap ( ) const
inline

Definition at line 175 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetRoughnessMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetRoughnessMap ( ) const
inline

Definition at line 172 of file Material.h.

References GetTextureMap().

Referenced by ToMaterialRecord().

◆ GetScalarProperties()

const ScalarPropertyMap& cloudViewer::visualization::rendering::Material::GetScalarProperties ( ) const
inline

Returns the map of scalar properties.

Definition at line 74 of file Material.h.

Referenced by cloudViewer::io::rpc::AddMaterialToMeshData().

◆ GetScalarProperty()

float cloudViewer::visualization::rendering::Material::GetScalarProperty ( const std::string &  key) const
inline

Get scalar properties of this Material. Throws exception if the property does not exist.

Parameters
keyProperty name

Definition at line 82 of file Material.h.

Referenced by GetAbsorptionDistance(), GetAnisotropy(), GetBaseClearcoat(), GetBaseClearcoatRoughness(), GetBaseMetallic(), GetBaseReflectance(), GetBaseRoughness(), GetLineWidth(), GetPointSize(), GetThickness(), and GetTransmission().

◆ GetTextureMap()

const t::geometry::Image& cloudViewer::visualization::rendering::Material::GetTextureMap ( const std::string &  key) const
inline

Get images (texture maps) of this Material. Throws exception if the image does not exist.

Parameters
keyMap name

Definition at line 69 of file Material.h.

Referenced by GetAlbedoMap(), GetAnisotropyMap(), GetAOMap(), GetAORoughnessMetalMap(), GetClearcoatMap(), GetClearcoatRoughnessMap(), GetMetallicMap(), GetNormalMap(), GetReflectanceMap(), and GetRoughnessMap().

◆ GetTextureMaps()

const TextureMaps& cloudViewer::visualization::rendering::Material::GetTextureMaps ( ) const
inline

Returns the texture map map.

Definition at line 63 of file Material.h.

Referenced by cloudViewer::io::rpc::AddMaterialToMeshData().

◆ GetThickness()

float cloudViewer::visualization::rendering::Material::GetThickness ( ) const
inline

Definition at line 252 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetTransmission()

float cloudViewer::visualization::rendering::Material::GetTransmission ( ) const
inline

Definition at line 253 of file Material.h.

References GetScalarProperty().

Referenced by ToMaterialRecord().

◆ GetVectorProperties()

const VectorPropertyMap& cloudViewer::visualization::rendering::Material::GetVectorProperties ( ) const
inline

Returns the map of vector properties.

Definition at line 87 of file Material.h.

Referenced by cloudViewer::io::rpc::AddMaterialToMeshData().

◆ GetVectorProperty()

Eigen::Vector4f cloudViewer::visualization::rendering::Material::GetVectorProperty ( const std::string &  key) const
inline

Get vector properties of this Material. Throws exception if the property does not exist.

Parameters
keyProperty name

Definition at line 95 of file Material.h.

Referenced by GetAbsorptionColor(), GetBaseColor(), and GetEmissiveColor().

◆ HasAbsorptionColor()

bool cloudViewer::visualization::rendering::Material::HasAbsorptionColor ( ) const
inline

Definition at line 275 of file Material.h.

References HasVectorProperty().

Referenced by ToMaterialRecord().

◆ HasAbsorptionDistance()

bool cloudViewer::visualization::rendering::Material::HasAbsorptionDistance ( ) const
inline

Definition at line 278 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasAlbedoMap()

bool cloudViewer::visualization::rendering::Material::HasAlbedoMap ( ) const
inline

◆ HasAnisotropy()

bool cloudViewer::visualization::rendering::Material::HasAnisotropy ( ) const
inline

Definition at line 272 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasAnisotropyMap()

bool cloudViewer::visualization::rendering::Material::HasAnisotropyMap ( ) const
inline

Definition at line 203 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasAOMap()

bool cloudViewer::visualization::rendering::Material::HasAOMap ( ) const
inline

Definition at line 195 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasAORoughnessMetalMap()

bool cloudViewer::visualization::rendering::Material::HasAORoughnessMetalMap ( ) const
inline

Definition at line 204 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasBaseClearcoat()

bool cloudViewer::visualization::rendering::Material::HasBaseClearcoat ( ) const
inline

Definition at line 268 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasBaseClearcoatRoughness()

bool cloudViewer::visualization::rendering::Material::HasBaseClearcoatRoughness ( ) const
inline

Definition at line 269 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasBaseColor()

bool cloudViewer::visualization::rendering::Material::HasBaseColor ( ) const
inline

Definition at line 264 of file Material.h.

References HasVectorProperty().

Referenced by ToMaterialRecord().

◆ HasBaseMetallic()

bool cloudViewer::visualization::rendering::Material::HasBaseMetallic ( ) const
inline

Definition at line 265 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasBaseReflectance()

bool cloudViewer::visualization::rendering::Material::HasBaseReflectance ( ) const
inline

Definition at line 267 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasBaseRoughness()

bool cloudViewer::visualization::rendering::Material::HasBaseRoughness ( ) const
inline

Definition at line 266 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasClearcoatMap()

bool cloudViewer::visualization::rendering::Material::HasClearcoatMap ( ) const
inline

Definition at line 199 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasClearcoatRoughnessMap()

bool cloudViewer::visualization::rendering::Material::HasClearcoatRoughnessMap ( ) const
inline

Definition at line 200 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasEmissiveColor()

bool cloudViewer::visualization::rendering::Material::HasEmissiveColor ( ) const
inline

Definition at line 281 of file Material.h.

References HasVectorProperty().

Referenced by ToMaterialRecord().

◆ HasLineWidth()

bool cloudViewer::visualization::rendering::Material::HasLineWidth ( ) const
inline

Definition at line 326 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasMetallicMap()

bool cloudViewer::visualization::rendering::Material::HasMetallicMap ( ) const
inline

Definition at line 196 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasNormalMap()

bool cloudViewer::visualization::rendering::Material::HasNormalMap ( ) const
inline

Definition at line 194 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasPointSize()

bool cloudViewer::visualization::rendering::Material::HasPointSize ( ) const
inline

Definition at line 325 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasReflectanceMap()

bool cloudViewer::visualization::rendering::Material::HasReflectanceMap ( ) const
inline

Definition at line 198 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasRoughnessMap()

bool cloudViewer::visualization::rendering::Material::HasRoughnessMap ( ) const
inline

Definition at line 197 of file Material.h.

References HasTextureMap().

Referenced by ToMaterialRecord().

◆ HasScalarProperty()

bool cloudViewer::visualization::rendering::Material::HasScalarProperty ( const std::string &  key) const
inline

◆ HasTextureMap()

bool cloudViewer::visualization::rendering::Material::HasTextureMap ( const std::string &  key) const
inline

◆ HasThickness()

bool cloudViewer::visualization::rendering::Material::HasThickness ( ) const
inline

Definition at line 273 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasTransmission()

bool cloudViewer::visualization::rendering::Material::HasTransmission ( ) const
inline

Definition at line 274 of file Material.h.

References HasScalarProperty().

Referenced by ToMaterialRecord().

◆ HasVectorProperty()

bool cloudViewer::visualization::rendering::Material::HasVectorProperty ( const std::string &  key) const
inline

Return true if the property exists

Parameters
keyProperty name

Definition at line 151 of file Material.h.

Referenced by HasAbsorptionColor(), HasBaseColor(), and HasEmissiveColor().

◆ IsValid()

bool cloudViewer::visualization::rendering::Material::IsValid ( ) const
inline

Returns true if the Material was not created with the default constructor and therefore has a valid shader name.

Definition at line 54 of file Material.h.

Referenced by cloudViewer::io::rpc::AddMaterialToMeshData(), cloudViewer::t::geometry::DrawableGeometry::HasMaterial(), cloudViewer::t::io::ReadTriangleMeshFromNPZ(), and ToString().

◆ operator=()

Material& cloudViewer::visualization::rendering::Material::operator= ( const Material other)
default

◆ SetAbsorptionColor()

void cloudViewer::visualization::rendering::Material::SetAbsorptionColor ( const Eigen::Vector4f &  value)
inline

Definition at line 306 of file Material.h.

References SetVectorProperty().

Referenced by SetDefaultProperties().

◆ SetAbsorptionDistance()

void cloudViewer::visualization::rendering::Material::SetAbsorptionDistance ( float  value)
inline

Definition at line 309 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetAlbedoMap()

void cloudViewer::visualization::rendering::Material::SetAlbedoMap ( const t::geometry::Image image)
inline

◆ SetAnisotropy()

void cloudViewer::visualization::rendering::Material::SetAnisotropy ( float  value)
inline

Definition at line 301 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetAnisotropyMap()

void cloudViewer::visualization::rendering::Material::SetAnisotropyMap ( const t::geometry::Image image)
inline

Definition at line 232 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetAOMap()

void cloudViewer::visualization::rendering::Material::SetAOMap ( const t::geometry::Image image)
inline

Definition at line 214 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetAORoughnessMetalMap()

void cloudViewer::visualization::rendering::Material::SetAORoughnessMetalMap ( const t::geometry::Image image)
inline

Definition at line 235 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetBaseClearcoat()

void cloudViewer::visualization::rendering::Material::SetBaseClearcoat ( float  value)
inline

Definition at line 295 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetBaseClearcoatRoughness()

void cloudViewer::visualization::rendering::Material::SetBaseClearcoatRoughness ( float  value)
inline

Definition at line 298 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetBaseColor()

void cloudViewer::visualization::rendering::Material::SetBaseColor ( const Eigen::Vector4f &  value)
inline

Definition at line 285 of file Material.h.

References SetVectorProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetBaseMetallic()

void cloudViewer::visualization::rendering::Material::SetBaseMetallic ( float  value)
inline

Definition at line 288 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetBaseReflectance()

void cloudViewer::visualization::rendering::Material::SetBaseReflectance ( float  value)
inline

Definition at line 292 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetBaseRoughness()

void cloudViewer::visualization::rendering::Material::SetBaseRoughness ( float  value)
inline

Definition at line 289 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetClearcoatMap()

void cloudViewer::visualization::rendering::Material::SetClearcoatMap ( const t::geometry::Image image)
inline

Definition at line 226 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetClearcoatRoughnessMap()

void cloudViewer::visualization::rendering::Material::SetClearcoatRoughnessMap ( const t::geometry::Image image)
inline

Definition at line 229 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetDefaultProperties()

◆ SetEmissiveColor()

void cloudViewer::visualization::rendering::Material::SetEmissiveColor ( const Eigen::Vector4f &  value)
inline

Definition at line 312 of file Material.h.

References SetVectorProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetLineWidth()

void cloudViewer::visualization::rendering::Material::SetLineWidth ( float  value)
inline

Definition at line 329 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetMaterialName()

void cloudViewer::visualization::rendering::Material::SetMaterialName ( const std::string &  material_name)
inline

Set material name. The material name should match the name of a built.

Parameters
shaderThe name of the shader.

Definition at line 130 of file Material.h.

Referenced by cloudViewer::t::io::ReadTriangleMeshFromNPZ().

◆ SetMetallicMap()

void cloudViewer::visualization::rendering::Material::SetMetallicMap ( const t::geometry::Image image)
inline

Definition at line 217 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetNormalMap()

void cloudViewer::visualization::rendering::Material::SetNormalMap ( const t::geometry::Image image)
inline

Definition at line 211 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetPointSize()

void cloudViewer::visualization::rendering::Material::SetPointSize ( float  value)
inline

Definition at line 328 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetReflectanceMap()

void cloudViewer::visualization::rendering::Material::SetReflectanceMap ( const t::geometry::Image image)
inline

Definition at line 223 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetRoughnessMap()

void cloudViewer::visualization::rendering::Material::SetRoughnessMap ( const t::geometry::Image image)
inline

Definition at line 220 of file Material.h.

References image, and SetTextureMap().

Referenced by FromMaterialRecord().

◆ SetScalarProperty()

void cloudViewer::visualization::rendering::Material::SetScalarProperty ( const std::string &  key,
float  value 
)
inline

Set scalar property. If property already exists it is overwritten, otherwise a new key/value will be created.

Parameters
keyproperty name
valueValue to assign to property name

Definition at line 111 of file Material.h.

Referenced by cloudViewer::io::rpc::GetMaterialFromMeshData(), cloudViewer::t::io::ReadTriangleMeshFromNPZ(), SetAbsorptionDistance(), SetAnisotropy(), SetBaseClearcoat(), SetBaseClearcoatRoughness(), SetBaseMetallic(), SetBaseReflectance(), SetBaseRoughness(), SetLineWidth(), SetPointSize(), SetThickness(), and SetTransmission().

◆ SetTextureMap()

void cloudViewer::visualization::rendering::Material::SetTextureMap ( const std::string &  key,
const t::geometry::Image image 
)

Set texture map. If map already exists it is overwritten, otherwise a new key/image will be created.

Parameters
keymap name
imageImage associated with map name

Definition at line 34 of file Material.cpp.

References image.

Referenced by cloudViewer::io::rpc::GetMaterialFromMeshData(), cloudViewer::t::io::ReadTriangleMeshFromNPZ(), SetAlbedoMap(), SetAnisotropyMap(), SetAOMap(), SetAORoughnessMetalMap(), SetClearcoatMap(), SetClearcoatRoughnessMap(), SetMetallicMap(), SetNormalMap(), SetReflectanceMap(), and SetRoughnessMap().

◆ SetThickness()

void cloudViewer::visualization::rendering::Material::SetThickness ( float  value)
inline

Definition at line 302 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetTransmission()

void cloudViewer::visualization::rendering::Material::SetTransmission ( float  value)
inline

Definition at line 303 of file Material.h.

References SetScalarProperty().

Referenced by FromMaterialRecord(), and SetDefaultProperties().

◆ SetVectorProperty()

void cloudViewer::visualization::rendering::Material::SetVectorProperty ( const std::string &  key,
const Eigen::Vector4f &  value 
)
inline

Set vector property. If property already exists it is overwritten, otherwise a new key/value will be created.

Parameters
keyproperty name
valueValue to assign to property name

Definition at line 120 of file Material.h.

Referenced by cloudViewer::io::rpc::GetMaterialFromMeshData(), SetAbsorptionColor(), SetBaseColor(), and SetEmissiveColor().

◆ ToMaterialRecord()

void cloudViewer::visualization::rendering::Material::ToMaterialRecord ( MaterialRecord record) const

Fills a legacy MaterialRecord constructed from this Material.

Definition at line 61 of file Material.cpp.

References cloudViewer::visualization::rendering::MaterialRecord::absorption_color, cloudViewer::visualization::rendering::MaterialRecord::absorption_distance, cloudViewer::visualization::rendering::MaterialRecord::albedo_img, cloudViewer::visualization::rendering::MaterialRecord::anisotropy_img, cloudViewer::visualization::rendering::MaterialRecord::ao_img, cloudViewer::visualization::rendering::MaterialRecord::ao_rough_metal_img, cloudViewer::visualization::rendering::MaterialRecord::base_anisotropy, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat, cloudViewer::visualization::rendering::MaterialRecord::base_clearcoat_roughness, cloudViewer::visualization::rendering::MaterialRecord::base_color, cloudViewer::visualization::rendering::MaterialRecord::base_metallic, cloudViewer::visualization::rendering::MaterialRecord::base_reflectance, cloudViewer::visualization::rendering::MaterialRecord::base_roughness, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_img, cloudViewer::visualization::rendering::MaterialRecord::clearcoat_roughness_img, cloudViewer::visualization::rendering::MaterialRecord::emissive_color, GetAbsorptionColor(), GetAbsorptionDistance(), GetAlbedoMap(), GetAnisotropy(), GetAnisotropyMap(), GetAOMap(), GetAORoughnessMetalMap(), GetBaseClearcoat(), GetBaseClearcoatRoughness(), GetBaseColor(), GetBaseMetallic(), GetBaseReflectance(), GetBaseRoughness(), GetClearcoatMap(), GetClearcoatRoughnessMap(), GetEmissiveColor(), GetLineWidth(), GetMaterialName(), GetMetallicMap(), GetNormalMap(), GetPointSize(), GetReflectanceMap(), GetRoughnessMap(), GetThickness(), GetTransmission(), HasAbsorptionColor(), HasAbsorptionDistance(), HasAlbedoMap(), HasAnisotropy(), HasAnisotropyMap(), HasAOMap(), HasAORoughnessMetalMap(), HasBaseClearcoat(), HasBaseClearcoatRoughness(), HasBaseColor(), HasBaseMetallic(), HasBaseReflectance(), HasBaseRoughness(), HasClearcoatMap(), HasClearcoatRoughnessMap(), HasEmissiveColor(), HasLineWidth(), HasMetallicMap(), HasNormalMap(), HasPointSize(), HasReflectanceMap(), HasRoughnessMap(), HasThickness(), HasTransmission(), cloudViewer::visualization::rendering::MaterialRecord::line_width, cloudViewer::visualization::rendering::MaterialRecord::metallic_img, cloudViewer::visualization::rendering::MaterialRecord::normal_img, cloudViewer::visualization::rendering::MaterialRecord::point_size, cloudViewer::visualization::rendering::MaterialRecord::reflectance_img, cloudViewer::visualization::rendering::MaterialRecord::roughness_img, cloudViewer::visualization::rendering::MaterialRecord::shader, cloudViewer::visualization::rendering::MaterialRecord::thickness, and cloudViewer::visualization::rendering::MaterialRecord::transmission.

◆ ToString()

std::string cloudViewer::visualization::rendering::Material::ToString ( ) const

String reprentation for printing.

Definition at line 43 of file Material.cpp.

References IsValid().


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