Go to the documentation of this file.
14 #ifndef vtkOpenGLVertexBufferObject_h
15 #define vtkOpenGLVertexBufferObject_h
17 #include "vtkRenderingOpenGL2Module.h"
113 vtkGetMacro(CoordShiftAndScaleEnabled,
bool);
116 virtual void SetShift(
const std::vector<double>& shift);
124 vtkGetMacro(DataType,
int);
127 vtkGetMacro(DataTypeSize,
unsigned int);
130 vtkGetMacro(NumberOfTuples,
unsigned int);
133 vtkGetMacro(NumberOfComponents,
unsigned int);
136 vtkSetMacro(Stride,
unsigned int);
137 vtkGetMacro(Stride,
unsigned int);
141 return this->PackedVBO; }
virtual void SetShift(const std::vector< double > &shift)
std::vector< double > Scale
std::vector< double > Shift
std::vector< float > PackedVBO
vtkOpenGLVertexBufferObject()
std::vector< float > & GetPackedVBO()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
record modification and/or execution time
virtual const std::vector< double > & GetScale()
abstract superclass for arrays of numeric data
bool CoordShiftAndScaleEnabled
ShiftScaleMethod CoordShiftAndScaleMethod
unsigned int NumberOfComponents
unsigned int DataTypeSize
virtual const std::vector< double > & GetShift()
virtual void SetScale(const std::vector< double > &scale)
~vtkOpenGLVertexBufferObject() override
void SetCache(vtkOpenGLVertexBufferObjectCache *cache)
a simple class to control print indentation
OpenGL vertex buffer object.
void AppendDataArray(vtkDataArray *array)
void UploadDataArray(vtkDataArray *array)
@ ALWAYS_AUTO_SHIFT_SCALE
Always shift scale using auto computed values.
unsigned int NumberOfTuples
static vtkOpenGLVertexBufferObject * New()
ShiftScaleMethod
Methods for VBO coordinate shift+scale-computation.
@ AUTO_SHIFT_SCALE
The default, automatic computation.
manage vertex buffer objects shared within a context
@ DISABLE_SHIFT_SCALE
Do not shift/scale point coordinates. Ever!
virtual void SetCoordShiftAndScaleMethod(ShiftScaleMethod meth)
vtkOpenGLVertexBufferObjectCache * Cache