ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
PclUtils::renders::MaterialConverter Class Reference

Material converter utility. More...

#include <MaterialConverter.h>

Static Public Member Functions

static VtkUtils::VtkMultiTextureRenderer::PBRMaterial FromCCMaterial (const ccMaterial *ccMat)
 Convert ccMaterial to PBRMaterial. More...
 
static VtkUtils::VtkMultiTextureRenderer::PBRMaterial FromPCLMaterial (const ::pcl::TexMaterial &pclMat)
 Convert pcl::TexMaterial to PBRMaterial (deprecated) More...
 
static VtkUtils::VtkMultiTextureRenderer::PBRMaterial FromMaterialSet (const ccMaterialSet *materials)
 Convert first material from ccMaterialSet to PBRMaterial. More...
 
static bool HasPBREncoding (const ccMaterial *material)
 Detect if material has PBR encoding. More...
 
static bool HasMultipleMapKd (const ccMaterialSet *materials)
 Detect if material set has multiple map_Kd textures. More...
 
static int CountMapKd (const ccMaterialSet *materials)
 Count map_Kd textures in material set. More...
 

Detailed Description

Material converter utility.

Converts between different material formats:

Definition at line 33 of file MaterialConverter.h.

Member Function Documentation

◆ CountMapKd()

int PclUtils::renders::MaterialConverter::CountMapKd ( const ccMaterialSet materials)
static

Count map_Kd textures in material set.

Definition at line 450 of file MaterialConverter.cpp.

References count, and CVLog::PrintDebug().

◆ FromCCMaterial()

VtkUtils::VtkMultiTextureRenderer::PBRMaterial PclUtils::renders::MaterialConverter::FromCCMaterial ( const ccMaterial ccMat)
static

Convert ccMaterial to PBRMaterial.

Definition at line 21 of file MaterialConverter.cpp.

References ecvColor::RgbaTpl< Type >::a, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::ambientColor, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::anisotropy, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::anisotropyTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::ao, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::aoTexture, ecvColor::RgbaTpl< Type >::b, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::baseColor, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::baseColorTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::clearcoat, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::clearcoatRoughness, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::clearcoatRoughnessTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::clearcoatTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::diffuseColor, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::emissive, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::emissiveTexture, ecvColor::RgbaTpl< Type >::g, ccMaterial::getAmbient(), ccMaterial::getAmbientOcclusion(), ccMaterial::getAnisotropy(), ccMaterial::getClearcoat(), ccMaterial::getClearcoatRoughness(), ccMaterial::getDiffuseFront(), ccMaterial::getEmission(), ccMaterial::getMetallic(), ccMaterial::getName(), ccMaterial::getRoughness(), ccMaterial::getSheen(), ccMaterial::getShininessFront(), ccMaterial::getSpecular(), ccMaterial::getTextureFilename(), ccMaterial::getTextureFilenames(), VtkUtils::VtkMultiTextureRenderer::PBRMaterial::hasMultipleMapKd, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::metallic, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::metallicTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::name, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::normalTexture, ecvColor::OPACITY, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::opacity, CVLog::Print(), CVLog::PrintDebug(), ecvColor::RgbaTpl< Type >::r, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::roughness, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::roughnessTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::sheen, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::sheenTexture, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::shininess, VtkUtils::VtkMultiTextureRenderer::PBRMaterial::specularColor, and CVLog::Warning().

Referenced by FromMaterialSet().

◆ FromMaterialSet()

◆ FromPCLMaterial()

◆ HasMultipleMapKd()

bool PclUtils::renders::MaterialConverter::HasMultipleMapKd ( const ccMaterialSet materials)
static

Detect if material set has multiple map_Kd textures.

Definition at line 434 of file MaterialConverter.cpp.

References count.

◆ HasPBREncoding()

bool PclUtils::renders::MaterialConverter::HasPBREncoding ( const ccMaterial material)
static

Detect if material has PBR encoding.

Definition at line 409 of file MaterialConverter.cpp.

References CVTools::FromQString(), ccMaterial::getName(), and ccMaterial::hasTextureMap().


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