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

Texture rendering manager. More...

#include <TextureRenderManager.h>

Public Member Functions

 TextureRenderManager ()
 
 ~TextureRenderManager ()
 
bool Apply (vtkLODActor *actor, const ccMaterialSet *materials, vtkPolyData *polydata, vtkRenderer *renderer)
 Apply rendering to actor. More...
 
bool Update (vtkActor *actor, const ccMaterialSet *materials, vtkPolyData *polydata, vtkRenderer *renderer)
 Update existing actor with new materials. More...
 
TextureRendererBaseSelectRenderer (const ccMaterialSet *materials) const
 Detect and select appropriate renderer for materials. More...
 
TextureRendererBaseGetRenderer (RenderingMode mode) const
 Get renderer by mode. More...
 

Detailed Description

Texture rendering manager.

Centralized manager for texture rendering that:

  • Automatically selects the appropriate renderer based on material properties
  • Provides unified interface for texture rendering operations
  • Manages multiple renderer instances (PBR, multi-texture, material-only)

Definition at line 32 of file TextureRenderManager.h.

Constructor & Destructor Documentation

◆ TextureRenderManager()

PclUtils::renders::TextureRenderManager::TextureRenderManager ( )

Definition at line 27 of file TextureRenderManager.cpp.

◆ ~TextureRenderManager()

PclUtils::renders::TextureRenderManager::~TextureRenderManager ( )
default

Member Function Documentation

◆ Apply()

bool PclUtils::renders::TextureRenderManager::Apply ( vtkLODActor *  actor,
const ccMaterialSet materials,
vtkPolyData *  polydata,
vtkRenderer *  renderer 
)

Apply rendering to actor.

Parameters
actorVTK actor to render
materialsMaterial set
polydataPolygon data (for texture coordinates)
rendererVTK renderer (for lighting setup)
Returns
true on success

Definition at line 159 of file TextureRenderManager.cpp.

References PclUtils::renders::TextureRendererBase::Apply(), CVLog::Error(), PclUtils::renders::TextureRendererBase::GetName(), CVLog::PrintDebug(), and SelectRenderer().

Referenced by PclUtils::renders::MeshMaterialExtractor::ApplyMaterialFromMesh(), and PclUtils::renders::MeshTextureApplier::ApplyTexturesFromMaterialSet().

◆ GetRenderer()

TextureRendererBase * PclUtils::renders::TextureRenderManager::GetRenderer ( RenderingMode  mode) const

Get renderer by mode.

Definition at line 120 of file TextureRenderManager.cpp.

◆ SelectRenderer()

TextureRendererBase * PclUtils::renders::TextureRenderManager::SelectRenderer ( const ccMaterialSet materials) const

Detect and select appropriate renderer for materials.

Parameters
materialsMaterial set
Returns
Selected renderer, or nullptr if none can handle

Definition at line 85 of file TextureRenderManager.cpp.

References CVLog::PrintDebug(), and CVLog::Warning().

Referenced by Apply(), and Update().

◆ Update()

bool PclUtils::renders::TextureRenderManager::Update ( vtkActor *  actor,
const ccMaterialSet materials,
vtkPolyData *  polydata,
vtkRenderer *  renderer 
)

Update existing actor with new materials.

Parameters
actorVTK actor to update
materialsMaterial set
polydataPolygon data
rendererVTK renderer
Returns
true on success

Definition at line 183 of file TextureRenderManager.cpp.

References CVLog::Error(), PclUtils::renders::TextureRendererBase::GetName(), CVLog::PrintDebug(), SelectRenderer(), and PclUtils::renders::TextureRendererBase::Update().


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