Go to the documentation of this file.
24 #ifndef vtkOpenGLPolyDataMapper_h
25 #define vtkOpenGLPolyDataMapper_h
28 #include "vtkRenderingOpenGL2Module.h"
77 vtkGetMacro(PopulateSelectionSettings,
int);
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
map vtkPolyData to graphics primitives
virtual void ReleaseGraphicsResources(vtkWindow *)
Release any graphics resources that are being consumed by this mapper.
bool GetHaveAppleBug()
Get the value of HaveAppleBug.
vtkOpenGLHelper TriStripsEdges
char * CompositeIdArrayName
bool ForceTextureCoordinates
vtkOpenGLHelper TrisEdges
vtkOpenGLVertexBufferObject * VBO
vtkSmartPointer< vtkValuePassHelper > ValuePassHelper
std::string OriginalValue
std::string CellTextureBuildString
void SetPopulateSelectionSettings(int v)
virtual void RenderPiece(vtkRenderer *ren, vtkActor *act)=0
Implemented by sub classes.
record modification and/or execution time
virtual void Modified()
Update the modification time for this object.
std::vector< float > AppleBugPrimIDs
vtkNew< vtkMatrix4x4 > VBOShiftScale
represent and manipulate 3x3 transformation matrices
std::string VBOBuildString
window superclass for vtkRenderWindow
vtkTypeUInt64 vtkMTimeType
vtkTextureObject * CellNormalTexture
vtkOpenGLHelper * LastBoundBO
bool operator>(const ReplacementSpec &v1) const
std::map< const vtkOpenGLHelper *, int > LastLightComplexity
char * FragmentShaderCode
std::map< const ReplacementSpec, ReplacementValue > UserShaderReplacements
vtkTimeStamp VBOBuildTime
vtkPolyData * CurrentInput
char * GeometryShaderCode
vtkOpenGLBufferObject * CellNormalBuffer
void ShallowCopy(vtkAbstractMapper *m)
Make a shallow copy of this mapper.
represents an object (geometry & properties) in a rendered scene
a simple class to control print indentation
abstracts an OpenGL texture object.
represent and manipulate 4x4 transformation matrices
object to represent cell connectivity
Type
Available shader types.
vtkGenericOpenGLResourceFreeCallback * ResourceCallback
vtkNew< vtkTransform > VBOInverseTransform
int PopulateSelectionSettings
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
bool operator<(const ReplacementSpec &v1) const
std::map< const vtkOpenGLHelper *, vtkTimeStamp > LightComplexityChanged
vtkOpenGLHelper TriStrips
vtkShader::Type ShaderType
vtkMatrix4x4 * TempMatrix4
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
static vtkPolyDataMapper * New()
virtual bool GetIsOpaque()
Returns if the mapper does not expect to have translucent geometry.
std::string IBOBuildString
void ForceHaveAppleBugOn()
abstract specification for renderers
vtkNew< vtkInformation > LastRenderPassInfo
concrete dataset represents vertices, lines, polygons, and triangle strips
void ForceHaveAppleBugOff()
Override the normal test for the apple bug.
virtual void ComputeBounds()
Called in GetBounds().
vtkOpenGLBufferObject * AppleBugPrimIDBuffer
vtkMatrix3x3 * TempMatrix3
virtual bool GetSupportsSelection()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
a PolyDataMapper for the OpenGL library
char * ProcessIdArrayName
vtkOpenGLBufferObject * CellScalarBuffer
vtkTimeStamp SelectionStateChanged
abstract class specifies interface to map data
vtkTextureObject * CellScalarTexture