|  | 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