VTK  9.3.0
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkBatchedSurfaceLICMapper Class Reference

Implements batched rendering of multiple vtkPolyData using LIC interface and OpenGL. More...

#include <vtkBatchedSurfaceLICMapper.h>

Inheritance diagram for vtkBatchedSurfaceLICMapper:
[legend]
Collaboration diagram for vtkBatchedSurfaceLICMapper:
[legend]

Public Types

typedef vtkOpenGLBatchedPolyDataMapper Superclass
 
- Public Types inherited from vtkOpenGLBatchedPolyDataMapper
typedef vtkOpenGLPolyDataMapperImplementation Superclass
 
using BatchElement = vtkOpenGLCompositePolyDataMapperDelegator::BatchElement
 API to add and query a GLBatchElement instance per vtkPolyData.
 
using GLBatchElement = vtkOpenGLCompositePolyDataMapperDelegator::GLBatchElement
 API to add and query a GLBatchElement instance per vtkPolyData.
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 
vtkBatchedSurfaceLICMapperNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
- Public Member Functions inherited from vtkOpenGLBatchedPolyDataMapper
vtkOpenGLBatchedPolyDataMapperNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
std::vector< vtkPolyData * > GetRenderedList () const
 Accessor to the ordered list of PolyData that we last drew.
 
void SetParent (vtkCompositePolyDataMapper *parent)
 
void RenderPiece (vtkRenderer *renderer, vtkActor *actor) override
 Implemented by sub classes.
 
void UnmarkBatchElements ()
 
void ClearUnmarkedBatchElements ()
 
void ProcessSelectorPixelBuffers (vtkHardwareSelector *sel, std::vector< unsigned int > &pixeloffsets, vtkProp *prop) override
 allows a mapper to update a selections color buffers Called from a prop which in turn is called from the selector
 
virtual void ProcessCompositePixelBuffers (vtkHardwareSelector *sel, vtkProp *prop, GLBatchElement *glBatchElement, std::vector< unsigned int > &mypixels)
 
void AddBatchElement (unsigned int flatIndex, BatchElement &&batchElement)
 API to add and query a GLBatchElement instance per vtkPolyData.
 
BatchElementGetBatchElement (vtkPolyData *polydata)
 API to add and query a GLBatchElement instance per vtkPolyData.
 
void ClearBatchElements ()
 API to add and query a GLBatchElement instance per vtkPolyData.
 

Static Public Member Functions

static vtkBatchedSurfaceLICMapperNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkBatchedSurfaceLICMapperSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkOpenGLBatchedPolyDataMapper
static vtkOpenGLBatchedPolyDataMapperNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLBatchedPolyDataMapperSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkBatchedSurfaceLICMapper ()
 
 ~vtkBatchedSurfaceLICMapper () override
 
void AppendOneBufferObject (vtkRenderer *ren, vtkActor *act, GLBatchElement *glBatchElement, vtkIdType &flat_index, std::vector< unsigned char > &colors, std::vector< float > &norms) override
 Build the VBO/IBO, called by UpdateBufferObjects.
 
void SetMapperShaderParameters (vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
 Set the shader parameters related to the mapper/input data, called by UpdateShader.
 
void ReplaceShaderValues (std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act) override
 Perform string replacements on the shader templates.
 
- Protected Member Functions inherited from vtkOpenGLBatchedPolyDataMapper
 vtkOpenGLBatchedPolyDataMapper ()
 
 ~vtkOpenGLBatchedPolyDataMapper () override
 
void RenderPieceDraw (vtkRenderer *renderer, vtkActor *actor) override
 
void UpdateCameraShiftScale (vtkRenderer *renderer, vtkActor *actoror) override
 
void DrawIBO (vtkRenderer *renderer, vtkActor *actoror, int primType, vtkOpenGLHelper &CellBO, GLenum mode, int pointSize)
 Draws primitives.
 
virtual void SetShaderValues (vtkShaderProgram *prog, GLBatchElement *glBatchElement, size_t primOffset)
 Applies rendering attributes for the corresponding polydata in the glBatchElement.
 
void UpdateShaders (vtkOpenGLHelper &cellBO, vtkRenderer *renderer, vtkActor *actor) override
 Make sure appropriate shaders are defined, compiled and bound.
 
void ReplaceShaderColor (std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *renderer, vtkActor *actor) override
 Perform string replacements on the shader templates, called from ReplaceShaderValues.
 
bool GetNeedToRebuildBufferObjects (vtkRenderer *renderer, vtkActor *actor) override
 Does the VBO/IBO need to be rebuilt.
 
void BuildBufferObjects (vtkRenderer *renderer, vtkActor *actor) override
 Build the VBO/IBO, called by UpdateBufferObjects.
 
void BuildSelectionIBO (vtkPolyData *poly, std::vector< unsigned int >(&indices)[4], vtkIdType offset) override
 Build the selection IBOs, called by UpdateBufferObjects.
 
int CanUseTextureMapForColoring (vtkDataObject *) override
 Returns if we can use texture maps for scalar coloring.
 

Additional Inherited Members

- Protected Attributes inherited from vtkOpenGLBatchedPolyDataMapper
vtkCompositePolyDataMapperParent = nullptr
 
std::map< std::uintptr_t, std::unique_ptr< GLBatchElement > > VTKPolyDataToGLBatchElement
 
std::vector< unsigned int > IndexArray [PrimitiveEnd]
 
bool PrimIDUsed
 
bool OverideColorUsed
 
vtkHardwareSelectorCurrentSelector
 
std::vector< std::vector< unsigned int > > PickPixels
 
std::map< vtkAbstractArray *, vtkDataArray * > ColorArrayMap
 

Detailed Description

Implements batched rendering of multiple vtkPolyData using LIC interface and OpenGL.

See also
vtkCompositeSurfaceLICMapperDelegator

Definition at line 19 of file vtkBatchedSurfaceLICMapper.h.

Member Typedef Documentation

◆ Superclass

Definition at line 24 of file vtkBatchedSurfaceLICMapper.h.

Constructor & Destructor Documentation

◆ vtkBatchedSurfaceLICMapper()

vtkBatchedSurfaceLICMapper::vtkBatchedSurfaceLICMapper ( )
protected

◆ ~vtkBatchedSurfaceLICMapper()

vtkBatchedSurfaceLICMapper::~vtkBatchedSurfaceLICMapper ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkBatchedSurfaceLICMapper * vtkBatchedSurfaceLICMapper::New ( )
static

◆ IsTypeOf()

static vtkTypeBool vtkBatchedSurfaceLICMapper::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkBatchedSurfaceLICMapper::IsA ( const char *  type)
virtual

Reimplemented from vtkOpenGLBatchedPolyDataMapper.

◆ SafeDownCast()

static vtkBatchedSurfaceLICMapper * vtkBatchedSurfaceLICMapper::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase * vtkBatchedSurfaceLICMapper::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkOpenGLBatchedPolyDataMapper.

◆ NewInstance()

vtkBatchedSurfaceLICMapper * vtkBatchedSurfaceLICMapper::NewInstance ( ) const

◆ PrintSelf()

void vtkBatchedSurfaceLICMapper::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
override

◆ AppendOneBufferObject()

void vtkBatchedSurfaceLICMapper::AppendOneBufferObject ( vtkRenderer ren,
vtkActor act,
GLBatchElement glBatchElement,
vtkIdType flat_index,
std::vector< unsigned char > &  colors,
std::vector< float > &  norms 
)
overrideprotectedvirtual

Build the VBO/IBO, called by UpdateBufferObjects.

Reimplemented from vtkOpenGLBatchedPolyDataMapper.

◆ SetMapperShaderParameters()

void vtkBatchedSurfaceLICMapper::SetMapperShaderParameters ( vtkOpenGLHelper cellBO,
vtkRenderer ren,
vtkActor act 
)
overrideprotected

Set the shader parameters related to the mapper/input data, called by UpdateShader.

◆ ReplaceShaderValues()

void vtkBatchedSurfaceLICMapper::ReplaceShaderValues ( std::map< vtkShader::Type, vtkShader * >  shaders,
vtkRenderer ren,
vtkActor act 
)
overrideprotected

Perform string replacements on the shader templates.


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