16 #ifndef vtkCompositeMapperHelper2_h
17 #define vtkCompositeMapperHelper2_h
24 #include "vtkRenderingOpenGL2Module.h"
97 std::map<vtkPolyData*, vtkCompositeMapperHelperData*>
Data;
105 GLenum
mode,
int pointSize);
127 std::vector<float>& norms);
represents an object (geometry & properties) in a rendered scene
std::vector< vtkPolyData * > GetRenderedList()
Accessor to the ordered list of PolyData that we last drew.
vtkCompositeMapperHelper2()
void UpdateShaders(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Make sure appropriate shaders are defined, compiled and bound.
std::vector< vtkPolyData * > RenderedList
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 ...
void RenderPiece(vtkRenderer *ren, vtkActor *act) override
Implemented by sub classes.
void DrawIBO(vtkRenderer *ren, vtkActor *actor, int primType, vtkOpenGLHelper &CellBO, GLenum mode, int pointSize)
std::vector< unsigned int > VertexOffsets
virtual void ProcessCompositePixelBuffers(vtkHardwareSelector *sel, vtkProp *prop, vtkCompositeMapperHelperData *hdata, std::vector< unsigned int > &mypixels)
std::map< vtkAbstractArray *, vtkDataArray * > ColorArrayMap
virtual void SetShaderValues(vtkShaderProgram *prog, vtkCompositeMapperHelperData *hdata, size_t primOffset)
void ReplaceShaderColor(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act) override
static vtkCompositeMapperHelper2 * New()
virtual void AppendOneBufferObject(vtkRenderer *ren, vtkActor *act, vtkCompositeMapperHelperData *hdata, vtkIdType &flat_index, std::vector< unsigned char > &colors, std::vector< float > &norms)
void RenderPieceDraw(vtkRenderer *ren, vtkActor *act) override
vtkCompositePolyDataMapper2 * Parent
void BuildBufferObjects(vtkRenderer *ren, vtkActor *act) override
Build the VBO/IBO, called by UpdateBufferObjects.
void SetParent(vtkCompositePolyDataMapper2 *p)
std::map< vtkPolyData *, vtkCompositeMapperHelperData * > Data
int CanUseTextureMapForColoring(vtkDataObject *) override
Returns if we can use texture maps for scalar coloring.
vtkHardwareSelector * CurrentSelector
vtkCompositeMapperHelperData * AddData(vtkPolyData *pd, unsigned int flatIndex)
std::vector< std::vector< unsigned int > > PickPixels
~vtkCompositeMapperHelper2() override
unsigned int StartIndex[vtkOpenGLPolyDataMapper::PrimitiveEnd]
unsigned int NextIndex[vtkOpenGLPolyDataMapper::PrimitiveEnd]
vtkNew< vtkOpenGLCellToVTKCellMap > CellCellMap
mapper for composite dataset consisting of polygonal data.
general representation of visualization data
PolyDataMapper using OpenGL to render.
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract superclass for all actors, volumes and annotations
abstract specification for renderers
The ShaderProgram uses one or more Shader objects.