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. 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...
|
|
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. More...
|
|
int | CanUseTextureMapForColoring (vtkDataObject *) override |
| Returns if we can use texture maps for scalar coloring. More...
|
|
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
- Events:
- vtkCommand::UpdateShaderEvent
Definition at line 46 of file vtkOpenGLBatchedPolyDataMapper.h.
vtkOpenGLBatchedPolyDataMapper::vtkOpenGLBatchedPolyDataMapper |
( |
| ) |
|
|
protected |
vtkOpenGLBatchedPolyDataMapper::~vtkOpenGLBatchedPolyDataMapper |
( |
| ) |
|
|
overrideprotected |
static vtkTypeBool vtkOpenGLBatchedPolyDataMapper::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
virtual vtkTypeBool vtkOpenGLBatchedPolyDataMapper::IsA |
( |
const char * |
type | ) |
|
|
virtual |
virtual vtkObjectBase* vtkOpenGLBatchedPolyDataMapper::NewInstanceInternal |
( |
| ) |
const |
|
protectedvirtual |
void vtkOpenGLBatchedPolyDataMapper::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
|
override |
void vtkOpenGLBatchedPolyDataMapper::AddBatchElement |
( |
unsigned int |
flatIndex, |
|
|
BatchElement && |
batchElement |
|
) |
| |
API to add and query a GLBatchElement instance per vtkPolyData.
API to add and query a GLBatchElement instance per vtkPolyData.
void vtkOpenGLBatchedPolyDataMapper::ClearBatchElements |
( |
| ) |
|
API to add and query a GLBatchElement instance per vtkPolyData.
std::vector<vtkPolyData*> vtkOpenGLBatchedPolyDataMapper::GetRenderedList |
( |
| ) |
const |
Accessor to the ordered list of PolyData that we last drew.
Implemented by sub classes.
Actual rendering is done here.
void vtkOpenGLBatchedPolyDataMapper::UnmarkBatchElements |
( |
| ) |
|
void vtkOpenGLBatchedPolyDataMapper::ClearUnmarkedBatchElements |
( |
| ) |
|
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
void vtkOpenGLBatchedPolyDataMapper::RenderPieceDraw |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
void vtkOpenGLBatchedPolyDataMapper::UpdateCameraShiftScale |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actoror |
|
) |
| |
|
overrideprotected |
Applies rendering attributes for the corresponding polydata in the glBatchElement.
Make sure appropriate shaders are defined, compiled and bound.
This method orchistrates the process, much of the work is done in other methods
Perform string replacements on the shader templates, called from ReplaceShaderValues.
bool vtkOpenGLBatchedPolyDataMapper::GetNeedToRebuildBufferObjects |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
Does the VBO/IBO need to be rebuilt.
void vtkOpenGLBatchedPolyDataMapper::BuildBufferObjects |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor |
|
) |
| |
|
overrideprotected |
Build the VBO/IBO, called by UpdateBufferObjects.
virtual void vtkOpenGLBatchedPolyDataMapper::AppendOneBufferObject |
( |
vtkRenderer * |
renderer, |
|
|
vtkActor * |
actor, |
|
|
GLBatchElement * |
glBatchElement, |
|
|
vtkIdType & |
vertexOffset, |
|
|
std::vector< unsigned char > & |
colors, |
|
|
std::vector< float > & |
norms |
|
) |
| |
|
protectedvirtual |
void vtkOpenGLBatchedPolyDataMapper::BuildSelectionIBO |
( |
vtkPolyData * |
poly, |
|
|
std::vector< unsigned int >(&) |
indices[4], |
|
|
vtkIdType |
offset |
|
) |
| |
|
overrideprotected |
Build the selection IBOs, called by UpdateBufferObjects.
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.
std::map<std::uintptr_t, std::unique_ptr<GLBatchElement> > vtkOpenGLBatchedPolyDataMapper::VTKPolyDataToGLBatchElement |
|
protected |
std::vector<unsigned int> vtkOpenGLBatchedPolyDataMapper::IndexArray[PrimitiveEnd] |
|
protected |
bool vtkOpenGLBatchedPolyDataMapper::PrimIDUsed |
|
protected |
bool vtkOpenGLBatchedPolyDataMapper::OverideColorUsed |
|
protected |
std::vector<std::vector<unsigned int> > vtkOpenGLBatchedPolyDataMapper::PickPixels |
|
protected |
The documentation for this class was generated from the following file: