An OpenGL mapper for batched rendering of vtkPolyData.
More...
#include <vtkOpenGLBatchedPolyDataMapper.h>
|
| virtual vtkObjectBase * | NewInstanceInternal () const |
| |
| | 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.
|
| |
| virtual void | AppendOneBufferObject (vtkRenderer *renderer, vtkActor *actor, GLBatchElement *glBatchElement, vtkIdType &vertexOffset, std::vector< unsigned char > &colors, std::vector< float > &norms) |
| |
| 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.
|
| |
An OpenGL mapper for batched rendering of vtkPolyData.
The parent class is determined at compile time. On OpenGL ES, the parent class is vtkOpenGLES30PolyDataMapper. Everywhere else, the parent class is vtkOpenGLPolyDataMapper.
- See also
- vtkOpenGLPolyDataMapper vtkOpenGLES30PolyDataMapper vtkOpenGLCompositePolyDataMapperDelegator
Definition at line 43 of file vtkOpenGLBatchedPolyDataMapper.h.
◆ Superclass
◆ BatchElement
◆ GLBatchElement
◆ vtkOpenGLBatchedPolyDataMapper()
| vtkOpenGLBatchedPolyDataMapper::vtkOpenGLBatchedPolyDataMapper |
( |
| ) |
|
|
protected |
◆ ~vtkOpenGLBatchedPolyDataMapper()
| vtkOpenGLBatchedPolyDataMapper::~vtkOpenGLBatchedPolyDataMapper |
( |
| ) |
|
|
overrideprotected |
◆ New()
◆ IsTypeOf()
| static vtkTypeBool vtkOpenGLBatchedPolyDataMapper::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
◆ IsA()
| virtual vtkTypeBool vtkOpenGLBatchedPolyDataMapper::IsA |
( |
const char * |
type | ) |
|
|
virtual |
◆ SafeDownCast()
◆ NewInstanceInternal()
| virtual vtkObjectBase * vtkOpenGLBatchedPolyDataMapper::NewInstanceInternal |
( |
| ) |
const |
|
protectedvirtual |
◆ NewInstance()
◆ PrintSelf()
| void vtkOpenGLBatchedPolyDataMapper::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
|
override |
◆ AddBatchElement()
| void vtkOpenGLBatchedPolyDataMapper::AddBatchElement |
( |
unsigned int |
flatIndex, |
|
|
BatchElement && |
batchElement |
|
) |
| |
API to add and query a GLBatchElement instance per vtkPolyData.
◆ GetBatchElement()
API to add and query a GLBatchElement instance per vtkPolyData.
◆ ClearBatchElements()
| void vtkOpenGLBatchedPolyDataMapper::ClearBatchElements |
( |
| ) |
|
API to add and query a GLBatchElement instance per vtkPolyData.
◆ GetRenderedList()
| std::vector< vtkPolyData * > vtkOpenGLBatchedPolyDataMapper::GetRenderedList |
( |
| ) |
const |
Accessor to the ordered list of PolyData that we last drew.
◆ SetParent()
◆ RenderPiece()
Implemented by sub classes.
Actual rendering is done here.
◆ UnmarkBatchElements()
| void vtkOpenGLBatchedPolyDataMapper::UnmarkBatchElements |
( |
| ) |
|
◆ ClearUnmarkedBatchElements()
| void vtkOpenGLBatchedPolyDataMapper::ClearUnmarkedBatchElements |
( |
| ) |
|
◆ ProcessSelectorPixelBuffers()
| void vtkOpenGLBatchedPolyDataMapper::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
◆ ProcessCompositePixelBuffers()
◆ RenderPieceDraw()
| void vtkOpenGLBatchedPolyDataMapper::RenderPieceDraw |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
◆ UpdateCameraShiftScale()
| void vtkOpenGLBatchedPolyDataMapper::UpdateCameraShiftScale |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actoror |
|
) |
| |
|
overrideprotected |
◆ DrawIBO()
◆ SetShaderValues()
Applies rendering attributes for the corresponding polydata in the glBatchElement.
◆ UpdateShaders()
Make sure appropriate shaders are defined, compiled and bound.
This method orchistrates the process, much of the work is done in other methods
◆ ReplaceShaderColor()
Perform string replacements on the shader templates, called from ReplaceShaderValues.
◆ GetNeedToRebuildBufferObjects()
| bool vtkOpenGLBatchedPolyDataMapper::GetNeedToRebuildBufferObjects |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
Does the VBO/IBO need to be rebuilt.
◆ BuildBufferObjects()
| void vtkOpenGLBatchedPolyDataMapper::BuildBufferObjects |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
Build the VBO/IBO, called by UpdateBufferObjects.
◆ AppendOneBufferObject()
| virtual void vtkOpenGLBatchedPolyDataMapper::AppendOneBufferObject |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor, |
|
|
GLBatchElement * |
glBatchElement, |
|
|
vtkIdType & |
vertexOffset, |
|
|
std::vector< unsigned char > & |
colors, |
|
|
std::vector< float > & |
norms |
|
) |
| |
|
protectedvirtual |
◆ BuildSelectionIBO()
| void vtkOpenGLBatchedPolyDataMapper::BuildSelectionIBO |
( |
vtkPolyData * |
poly, |
|
|
std::vector< unsigned int >(&) |
indices[4], |
|
|
vtkIdType |
offset |
|
) |
| |
|
overrideprotected |
Build the selection IBOs, called by UpdateBufferObjects.
◆ CanUseTextureMapForColoring()
| int vtkOpenGLBatchedPolyDataMapper::CanUseTextureMapForColoring |
( |
vtkDataObject * |
| ) |
|
|
overrideprotected |
Returns if we can use texture maps for scalar coloring.
Note this doesn't say we "will" use scalar coloring. It says, if we do use scalar coloring, we will use a texture. Always off for this mapper.
◆ Parent
◆ VTKPolyDataToGLBatchElement
| std::map<std::uintptr_t, std::unique_ptr<GLBatchElement> > vtkOpenGLBatchedPolyDataMapper::VTKPolyDataToGLBatchElement |
|
protected |
◆ IndexArray
| std::vector<unsigned int> vtkOpenGLBatchedPolyDataMapper::IndexArray[PrimitiveEnd] |
|
protected |
◆ PrimIDUsed
| bool vtkOpenGLBatchedPolyDataMapper::PrimIDUsed |
|
protected |
◆ OverideColorUsed
| bool vtkOpenGLBatchedPolyDataMapper::OverideColorUsed |
|
protected |
◆ CurrentSelector
◆ PickPixels
| std::vector<std::vector<unsigned int> > vtkOpenGLBatchedPolyDataMapper::PickPixels |
|
protected |
◆ ColorArrayMap
The documentation for this class was generated from the following file: