VTK  9.3.1
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 vtkOpenGLPolyDataMapper Superclass
 
using BatchElement = vtkOpenGLCompositePolyDataMapperDelegator::BatchElement
 API to add and query a GLBatchElement instance per vtkPolyData. More...
 
using GLBatchElement = vtkOpenGLCompositePolyDataMapperDelegator::GLBatchElement
 API to add and query a GLBatchElement instance per vtkPolyData. More...
 

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. More...
 
void SetParent (vtkCompositePolyDataMapper *parent)
 
void RenderPiece (vtkRenderer *renderer, vtkActor *actor) override
 Implemented by sub classes. More...
 
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 More...
 
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. More...
 
BatchElementGetBatchElement (vtkPolyData *polydata)
 API to add and query a GLBatchElement instance per vtkPolyData. More...
 
void ClearBatchElements ()
 API to add and query a GLBatchElement instance per vtkPolyData. More...
 

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. More...
 
void SetMapperShaderParameters (vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
 Set the shader parameters related to the mapper/input data, called by UpdateShader. More...
 
void ReplaceShaderValues (std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act) override
 Perform string replacements on the shader templates. More...
 
- 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. More...
 
virtual void SetShaderValues (vtkShaderProgram *prog, GLBatchElement *glBatchElement, size_t primOffset)
 Applies rendering attributes for the corresponding polydata in the glBatchElement. More...
 
void UpdateShaders (vtkOpenGLHelper &cellBO, vtkRenderer *renderer, vtkActor *actor) override
 Make sure appropriate shaders are defined, compiled and bound. More...
 
void ReplaceShaderColor (std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *renderer, vtkActor *actor) override
 Perform string replacements on the shader templates, called from ReplaceShaderValues. More...
 
bool GetNeedToRebuildBufferObjects (vtkRenderer *renderer, vtkActor *actor) override
 Does the VBO/IBO need to be rebuilt. More...
 
void BuildBufferObjects (vtkRenderer *renderer, vtkActor *actor) override
 Build the VBO/IBO, called by UpdateBufferObjects. More...
 
void BuildSelectionIBO (vtkPolyData *poly, std::vector< unsigned int >(&indices)[4], vtkIdType offset) override
 Build the selection IBOs, called by UpdateBufferObjects. More...
 
int CanUseTextureMapForColoring (vtkDataObject *) override
 Returns if we can use texture maps for scalar coloring. More...
 

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

Definition at line 24 of file vtkBatchedSurfaceLICMapper.h.

Constructor & Destructor Documentation

vtkBatchedSurfaceLICMapper::vtkBatchedSurfaceLICMapper ( )
protected
vtkBatchedSurfaceLICMapper::~vtkBatchedSurfaceLICMapper ( )
overrideprotected

Member Function Documentation

static vtkBatchedSurfaceLICMapper* vtkBatchedSurfaceLICMapper::New ( )
static
static vtkTypeBool vtkBatchedSurfaceLICMapper::IsTypeOf ( const char *  type)
static
virtual vtkTypeBool vtkBatchedSurfaceLICMapper::IsA ( const char *  type)
virtual

Reimplemented from vtkOpenGLBatchedPolyDataMapper.

static vtkBatchedSurfaceLICMapper* vtkBatchedSurfaceLICMapper::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkBatchedSurfaceLICMapper::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkOpenGLBatchedPolyDataMapper.

vtkBatchedSurfaceLICMapper* vtkBatchedSurfaceLICMapper::NewInstance ( ) const
void vtkBatchedSurfaceLICMapper::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
override
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.

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

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

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: