21 #ifndef vtkOpenGLGlyph3DHelper_h
22 #define vtkOpenGLGlyph3DHelper_h
24 #include "vtkRenderingOpenGL2Module.h"
36 void SetModelTransform(
float *matrix)
38 this->ModelTransformMatrix = matrix;
43 this->ModelNormalMatrix = matrix;
48 this->ModelColor =
color;
53 this->UseFastPath = fastpath;
54 this->UsingInstancing =
false;
61 std::vector<unsigned char> &colors, std::vector<float> &matrices,
62 std::vector<float> &normalMatrices, std::vector<vtkIdType> &pickIds,
77 #if GL_ES_VERSION_2_0 != 1 || GL_ES_VERSION_3_0 == 1
79 std::vector<unsigned char> &colors, std::vector<float> &matrices,
80 std::vector<float> &normalMatrices,
88 std::map<vtkShader::Type, vtkShader *> shaders,
96 std::map<vtkShader::Type, vtkShader *> shaders,
99 std::map<vtkShader::Type, vtkShader *> shaders,
102 std::map<vtkShader::Type, vtkShader *> shaders,
105 std::map<vtkShader::Type, vtkShader *> shaders,
108 std::map<vtkShader::Type, vtkShader *> shaders,
represents an object (geometry & properties) in a rendered scene
dynamic, self-adjusting array of bits
a simple class to control print indentation
PolyDataMapper using OpenGL to render.
virtual void SetPropertyShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act)
Set the shader parameteres related to the property.
vtkTimeStamp InstanceBuffersLoadTime
~vtkOpenGLGlyph3DHelper()
virtual void ReplaceShaderPositionVC(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
virtual void SetCameraShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act)
Set the shader parameteres related to the Camera.
void GlyphRender(vtkRenderer *ren, vtkActor *actor, vtkIdType numPts, std::vector< unsigned char > &colors, std::vector< float > &matrices, std::vector< float > &normalMatrices, std::vector< vtkIdType > &pickIds, vtkMTimeType pointMTime)
Fast path for rendering glyphs comprised of only one type of primative.
virtual void GetShaderTemplate(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
Create the basic shaders before replacement.
vtkOpenGLBufferObject * ColorBuffer
virtual void SetMapperShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act)
Set the shader parameteres related to the actor/mapper.
void GlyphRenderInstances(vtkRenderer *ren, vtkActor *actor, vtkIdType numPts, std::vector< unsigned char > &colors, std::vector< float > &matrices, std::vector< float > &normalMatrices, vtkMTimeType pointMTime)
unsigned char * ModelColor
static vtkOpenGLGlyph3DHelper * New()
vtkOpenGLBufferObject * MatrixBuffer
void SetModelColor(unsigned char *color)
vtkOpenGLBufferObject * NormalMatrixBuffer
void SetUseFastPath(bool fastpath)
virtual void ReplaceShaderNormal(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
float * ModelTransformMatrix
float * ModelNormalMatrix
virtual void ReplaceShaderClip(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
void SetModelNormalTransform(float *matrix)
virtual void ReplaceShaderColor(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
virtual void ReplaceShaderPicking(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act)
Perform string replacments on the shader templates.
virtual void ReleaseGraphicsResources(vtkWindow *window)
Release any graphics resources that are being consumed by this mapper.
a PolyDataMapper for the OpenGL library
abstract specification for renderers
record modification and/or execution time
window superclass for vtkRenderWindow
vtkTypeUInt64 vtkMTimeType