15 #ifndef vtkGLVBOHelpher_h
16 #define vtkGLVBOHelpher_h
18 #include "vtkRenderingOpenGL2Module.h"
49 BufferObject &indexBuffer,
54 std::vector<unsigned int> &indexArray,
57 std::vector<unsigned int> &cellPointMap,
62 BufferObject &indexBuffer);
66 std::vector<unsigned int> &indexArray,
75 std::vector<unsigned int> &indexArray,
81 std::vector<GLintptr> &memoryOffsetArray,
82 std::vector<unsigned int> &elementCountArray,
83 bool wireframeTriStrips);
90 class VTKRENDERINGOPENGL2_EXPORT
CellBO
106 void ReleaseGraphicsResources(
vtkWindow *win);
130 unsigned char *colors,
int colorComponents,
132 unsigned int *cellPointMap,
unsigned int *pointCellMap,
133 bool cellScalars,
bool cellNormals);
137 unsigned char *colors,
int colorComponents,
138 unsigned int *cellPointMap,
unsigned int *pointCellMap,
139 bool cellScalars,
bool cellNormals);
144 std::vector<unsigned int> &cellPointMap,
145 std::vector<unsigned int> &pointCellMap);
149 #endif // vtkGLVBOHelpher_h
void AppendVBO(VBOLayout &layout, vtkPoints *points, unsigned int numPoints, vtkDataArray *normals, vtkDataArray *tcoords, unsigned char *colors, int colorComponents, unsigned int *cellPointMap, unsigned int *pointCellMap, bool cellScalars, bool cellNormals)
vtkShaderProgram * Program
vtkTimeStamp ShaderSourceTime
manage Shader Programs within a context
size_t CreatePointIndexBuffer(vtkCellArray *cells, BufferObject &indexBuffer)
void AppendTriangleIndexBuffer(std::vector< unsigned int > &indexArray, vtkCellArray *cells, vtkPoints *points, std::vector< unsigned int > &cellPointMap, vtkIdType vertexOffset)
record modification and/or execution time
GLsizei GLsizei GLchar * source
concrete dataset represents vertices, lines, polygons, and triangle strips
size_t CreateEdgeFlagIndexBuffer(vtkCellArray *cells, BufferObject &indexBuffer, vtkDataArray *edgeflags)
window superclass for vtkRenderWindow
bool VTKRENDERINGOPENGL2_EXPORT substitute(std::string &source, const std::string &search, const std::string replace, bool all=true)
size_t CreateTriangleLineIndexBuffer(vtkCellArray *cells, BufferObject &indexBuffer)
std::vector< float > PackedVBO
abstract superclass for arrays of numeric data
std::string VTKRENDERINGOPENGL2_EXPORT replace(std::string source, const std::string &search, const std::string replace, bool all=true)
vtkTimeStamp attributeUpdateTime
The VertexArrayObject class uses, or emulates, vertex array objects.
std::vector< unsigned int > elementsArray
object to represent cell connectivity
GLsizei const GLfloat * points
void CreateCellSupportArrays(vtkPolyData *poly, vtkCellArray *[4], std::vector< unsigned int > &cellPointMap, std::vector< unsigned int > &pointCellMap)
void AppendPointIndexBuffer(std::vector< unsigned int > &indexArray, vtkCellArray *cells, vtkIdType vertexOffset)
void AppendTriangleLineIndexBuffer(std::vector< unsigned int > &indexArray, vtkCellArray *cells, vtkIdType vertexOffset)
std::vector< GLintptr > offsetArray
VBOLayout CreateVBO(vtkPoints *points, unsigned int numPoints, vtkDataArray *normals, vtkDataArray *tcoords, unsigned char *colors, int colorComponents, BufferObject &vertexBuffer, unsigned int *cellPointMap, unsigned int *pointCellMap, bool cellScalars, bool cellNormals)
size_t CreateTriangleIndexBuffer(vtkCellArray *cells, BufferObject &indexBuffer, vtkPoints *points, std::vector< unsigned int > &cellPointMap)
size_t CreateMultiIndexBuffer(vtkCellArray *cells, BufferObject &indexBuffer, std::vector< GLintptr > &memoryOffsetArray, std::vector< unsigned int > &elementCountArray, bool wireframeTriStrips)
GLsizei const GLchar ** string
represent and manipulate 3D points
The ShaderProgram uses one or more Shader objects.