24 #ifndef vtkOpenGLPolyDataMapper_h
25 #define vtkOpenGLPolyDataMapper_h
28 #include "vtkRenderingOpenGL2Module.h"
53 void PrintSelf(ostream& os,
vtkIndent indent);
75 void ReleaseGraphicsResources(
vtkWindow *);
77 vtkGetMacro(PopulateSelectionSettings,
int);
78 void SetPopulateSelectionSettings(
int v) { this->PopulateSelectionSettings = v; };
112 vtkSetStringMacro(PointIdArrayName);
114 vtkSetStringMacro(CellIdArrayName);
124 vtkSetStringMacro(ProcessIdArrayName);
138 vtkSetStringMacro(CompositeIdArrayName);
151 void AddShaderReplacement(
157 void ClearShaderReplacement(
170 vtkSetStringMacro(VertexShaderCode);
172 vtkSetStringMacro(FragmentShaderCode);
174 vtkSetStringMacro(GeometryShaderCode);
184 std::vector<float> &buffData);
197 this->HaveAppleBugForce = 1;
202 this->HaveAppleBugForce = 2;
218 void SetVBOShiftScaleMethod(
int m);
238 void GetCoincidentParameters(
252 virtual void UpdateShaders(
258 virtual bool GetNeedToRebuildShaders(
264 virtual void BuildShaders(
265 std::map<vtkShader::Type, vtkShader *> shaders,
271 virtual void GetShaderTemplate(
272 std::map<vtkShader::Type, vtkShader *> shaders,
278 virtual void ReplaceShaderValues(
279 std::map<vtkShader::Type, vtkShader *> shaders,
287 virtual void ReplaceShaderRenderPass(
288 std::map<vtkShader::Type, vtkShader *> shaders,
290 virtual void ReplaceShaderColor(
291 std::map<vtkShader::Type, vtkShader *> shaders,
293 virtual void ReplaceShaderLight(
294 std::map<vtkShader::Type, vtkShader *> shaders,
296 virtual void ReplaceShaderTCoord(
297 std::map<vtkShader::Type, vtkShader *> shaders,
299 virtual void ReplaceShaderPicking(
300 std::map<vtkShader::Type, vtkShader *> shaders,
302 virtual void ReplaceShaderPrimID(
303 std::map<vtkShader::Type, vtkShader *> shaders,
305 virtual void ReplaceShaderNormal(
306 std::map<vtkShader::Type, vtkShader *> shaders,
308 virtual void ReplaceShaderClip(
309 std::map<vtkShader::Type, vtkShader *> shaders,
311 virtual void ReplaceShaderPositionVC(
312 std::map<vtkShader::Type, vtkShader *> shaders,
314 virtual void ReplaceShaderCoincidentOffset(
315 std::map<vtkShader::Type, vtkShader *> shaders,
317 virtual void ReplaceShaderDepth(
318 std::map<vtkShader::Type, vtkShader *> shaders,
379 virtual bool HaveTextures(
vtkActor *actor);
382 virtual unsigned int GetNumberOfTextures(
vtkActor *actor);
389 virtual std::vector<vtkTexture *> GetTextures(
vtkActor *actor);
431 void BuildCellTextures(
437 void AppendCellTextures(
442 std::vector<unsigned char> &colors,
443 std::vector<float> &normals,
493 #if GL_ES_VERSION_2_0 != 1 && GL_ES_VERSION_3_0 != 1
void ForceHaveAppleBugOn()
Override the normal test for the apple bug.
a PolyDataMapper for the OpenGL library
vtkMatrix3x3 * TempMatrix3
represents an object (geometry & properties) in a rendered scene
vtkOpenGLBufferObject * CellScalarBuffer
std::string VBOBuildString
represent and manipulate 4x4 transformation matrices
Type
Available shader types.
vtkTimeStamp VBOBuildTime
record modification and/or execution time
vtkPolyData * CurrentInput
vtkTextureObject * CellScalarTexture
vtkOpenGLBufferObject * CellNormalBuffer
vtkTextureObject * CellNormalTexture
abstract specification for renderers
std::string OriginalValue
std::map< const ReplacementSpec, ReplacementValue > UserShaderReplacements
bool ForceTextureCoordinates
virtual bool GetIsOpaque()
Returns if the mapper does not expect to have translucent geometry.
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkOpenGLVertexBufferObject * VBO
vtkTypeUInt64 vtkMTimeType
bool operator<(const ReplacementSpec &v1) const
vtkSmartPointer< vtkValuePassHelper > ValuePassHelper
Implementation of both rendering modes of vtkValuePass for the vtkOpenGLPolyDataMapper.
std::vector< float > AppleBugPrimIDs
window superclass for vtkRenderWindow
int PopulateSelectionSettings
bool operator>(const ReplacementSpec &v1) const
a simple class to control print indentation
std::map< const vtkOpenGLHelper *, vtkTimeStamp > LightComplexityChanged
vtkMatrix4x4 * TempMatrix4
vtkNew< vtkMatrix4x4 > VBOShiftScale
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
virtual void Modified()
Update the modification time for this object.
char * FragmentShaderCode
std::string IBOBuildString
char * GeometryShaderCode
virtual void ComputeBounds()
Called in GetBounds().
virtual bool GetSupportsSelection()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
vtkOpenGLHelper * LastBoundBO
abstract class specifies interface to map data
void ShallowCopy(vtkAbstractMapper *m)
Make a shallow copy of this mapper.
std::map< const vtkOpenGLHelper *, int > LastLightComplexity
abstracts an OpenGL texture object.
vtkTimeStamp SelectionStateChanged
map vtkPolyData to graphics primitives
object to represent cell connectivity
vtkShader::Type ShaderType
vtkGenericOpenGLResourceFreeCallback * ResourceCallback
vtkNew< vtkTransform > VBOInverseTransform
bool GetHaveAppleBug()
Get the value of HaveAppleBug.
vtkOpenGLHelper TriStripsEdges
char * ProcessIdArrayName
static vtkPolyDataMapper * New()
vtkOpenGLHelper TriStrips
char * CompositeIdArrayName
represent and manipulate 3x3 transformation matrices
vtkOpenGLHelper TrisEdges
vtkNew< vtkInformation > LastRenderPassInfo
void ForceHaveAppleBugOff()
Override the normal test for the apple bug.
std::string CellTextureBuildString
vtkOpenGLBufferObject * AppleBugPrimIDBuffer