 |
VTK
9.0.1
|
Go to the documentation of this file.
27 #ifndef vtkOpenGLPolyDataMapper_h
28 #define vtkOpenGLPolyDataMapper_h
34 #include "vtkRenderingOpenGL2Module.h"
85 vtkGetMacro(PopulateSelectionSettings,
int);
108 vtkSetStringMacro(PointIdArrayName);
109 vtkGetStringMacro(PointIdArrayName);
110 vtkSetStringMacro(CellIdArrayName);
111 vtkGetStringMacro(CellIdArrayName);
120 vtkSetStringMacro(ProcessIdArrayName);
121 vtkGetStringMacro(ProcessIdArrayName);
134 vtkSetStringMacro(CompositeIdArrayName);
135 vtkGetStringMacro(CompositeIdArrayName);
138 #ifndef VTK_LEGACY_REMOVE
153 const std::string& replacementValue,
bool replaceAll);)
155 const std::string& originalValue,
bool replaceFirst);)
156 VTK_LEGACY(
void ClearAllShaderReplacements(
vtkShader::Type shaderType);)
157 VTK_LEGACY(
void ClearAllShaderReplacements();)
169 VTK_LEGACY(
virtual void SetVertexShaderCode(
const char* code);)
170 VTK_LEGACY(
virtual char* GetVertexShaderCode();)
171 VTK_LEGACY(
virtual void SetFragmentShaderCode(
const char* code);)
172 VTK_LEGACY(
virtual char* GetFragmentShaderCode();)
173 VTK_LEGACY(
virtual void SetGeometryShaderCode(
const char* code);)
174 VTK_LEGACY(
virtual char* GetGeometryShaderCode();)
189 void SetVBOShiftScaleMethod(
int m);
216 int fieldAssociation,
int componentno = -1)
override;
224 int fieldAssociation,
int componentno = -1)
override;
249 void MapDataArray(
const char* vertexAttributeName,
const char* dataArrayName,
250 const char* texturename,
int fieldAssociation,
int componentno);
253 std::string GetTextureCoordinateName(
const char* tname);
281 virtual void BuildShaders(
287 virtual void GetShaderTemplate(
293 virtual void ReplaceShaderValues(
301 virtual void ReplaceShaderRenderPass(
302 std::map<vtkShader::Type, vtkShader*> shaders,
vtkRenderer* ren,
vtkActor* act,
bool prePass);
303 virtual void ReplaceShaderCustomUniforms(
304 std::map<vtkShader::Type, vtkShader*> shaders,
vtkActor* act);
305 virtual void ReplaceShaderColor(
307 virtual void ReplaceShaderLight(
309 virtual void ReplaceShaderTCoord(
311 virtual void ReplaceShaderPicking(
313 virtual void ReplaceShaderPrimID(
315 virtual void ReplaceShaderNormal(
317 virtual void ReplaceShaderClip(
319 virtual void ReplaceShaderPositionVC(
321 virtual void ReplaceShaderCoincidentOffset(
323 virtual void ReplaceShaderDepth(
340 virtual void SetLightingShaderParameters(
351 virtual void SetPropertyShaderParameters(
386 virtual bool HaveTextures(
vtkActor* actor);
389 virtual unsigned int GetNumberOfTextures(
vtkActor* actor);
396 virtual std::vector<std::pair<vtkTexture*, std::string> > GetTextures(
vtkActor* actor);
441 virtual void BuildCellTextures(
445 std::vector<unsigned char>& colors, std::vector<float>& normals,
vtkPolyData* pd,
473 #ifndef VTK_LEGACY_REMOVE
486 int GetOpenGLMode(
int representation,
int primType);
490 int GetPointPickingPrimitiveSize(
int primType);
map vtkPolyData to graphics primitives
represent and manipulate 3D points
represent GPU shader properties
char * CompositeIdArrayName
bool ForceTextureCoordinates
vtkStateStorage TempState
vtkNew< vtkOpenGLCellToVTKCellMap > CellCellMap
virtual void MapDataArrayToMultiTextureAttribute(const char *textureName, const char *dataArrayName, int fieldAssociation, int componentno=-1)
Class to make storing and comparing state quick and easy.
void SetPopulateSelectionSettings(int v)
virtual void RemoveVertexAttributeMapping(const char *vertexAttributeName)
Remove a vertex attribute mapping.
record modification and/or execution time
vtkStateStorage VBOBuildState
void ShallowCopy(vtkAbstractMapper *m) override
Make a shallow copy of this mapper.
vtkStateStorage IBOBuildState
@ PrimitiveTriStripsEdges
vtkNew< vtkMatrix4x4 > VBOShiftScale
represent and manipulate 3x3 transformation matrices
OpenGL rendering utility functions.
virtual void RenderPiece(vtkRenderer *, vtkActor *)
Implemented by sub classes.
window superclass for vtkRenderWindow
std::map< const vtkOpenGLHelper *, int > LastLightComplexity
vtkTextureObject * CellNormalTexture
Asynchronously measures GPU execution time for a single event.
std::map< const vtkOpenGLHelper *, vtkTimeStamp > LightComplexityChanged
vtkOpenGLHelper * LastBoundBO
handles properties associated with a texture map
std::map< std::string, ExtraAttributeValue > ExtraAttributes
vtkTimeStamp VBOBuildTime
manage vertex buffer objects shared within a mapper
virtual void ProcessSelectorPixelBuffers(vtkHardwareSelector *, std::vector< unsigned int > &, vtkProp *)
allows a mapper to update a selections color buffers Called from a prop which in turn is called from ...
vtkPolyData * CurrentInput
vtkOpenGLBufferObject * CellNormalBuffer
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
bool DrawingEdgesOrVertices
object to represent cell connectivity
Type
Available shader types.
vtkGenericOpenGLResourceFreeCallback * ResourceCallback
vtkNew< vtkTransform > VBOInverseTransform
int PopulateSelectionSettings
bool GetSupportsSelection() override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this mapper.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract superclass for all actors, volumes and annotations
vtkMatrix4x4 * TempMatrix4
vtkOpenGLVertexBufferObjectGroup * VBOs
static vtkPolyDataMapper * New()
virtual void MapDataArrayToVertexAttribute(const char *vertexAttributeName, const char *dataArrayName, int fieldAssociation, int componentno=-1)
Select a data array from the point/cell data and map it to a generic vertex attribute.
vtkOpenGLRenderTimer * TimerQuery
vtkOpenGLTexture * InternalColorTexture
abstract specification for renderers
vtkNew< vtkInformation > LastRenderPassInfo
unsigned int TimerQueryCounter
vtkStateStorage CellTextureBuildState
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void ComputeBounds()
Called in GetBounds().
vtkMatrix3x3 * TempMatrix3
PolyDataMapper using OpenGL to render.
char * ProcessIdArrayName
vtkOpenGLBufferObject * CellScalarBuffer
vtkSmartPointer< vtkOpenGLShaderProperty > LegacyShaderProperty
vtkTimeStamp SelectionStateChanged
std::map< const vtkOpenGLHelper *, int > LastLightCount
virtual void RemoveAllVertexAttributeMappings()
Remove all vertex attributes.
abstract class specifies interface to map data
vtkTextureObject * CellScalarTexture
vtkTypeUInt32 vtkMTimeType