VTK  9.3.0
vtkBatchedSurfaceLICMapper.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
10 #ifndef vtkBatchedSurfaceLICMapper_h
11 #define vtkBatchedSurfaceLICMapper_h
12 
14 
15 #include "vtkRenderingLICOpenGL2Module.h" // for export macro
16 
17 VTK_ABI_NAMESPACE_BEGIN
18 
19 class VTKRENDERINGLICOPENGL2_EXPORT vtkBatchedSurfaceLICMapper
21 {
22 public:
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
27 protected:
30 
34  void AppendOneBufferObject(vtkRenderer* ren, vtkActor* act, GLBatchElement* glBatchElement,
35  vtkIdType& flat_index, std::vector<unsigned char>& colors, std::vector<float>& norms) override;
36 
40  void SetMapperShaderParameters(vtkOpenGLHelper& cellBO, vtkRenderer* ren, vtkActor* act) override;
41 
46  std::map<vtkShader::Type, vtkShader*> shaders, vtkRenderer* ren, vtkActor* act) override;
47 
48 private:
50  void operator=(const vtkBatchedSurfaceLICMapper&) = delete;
51 };
52 VTK_ABI_NAMESPACE_END
53 #endif
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:50
Implements batched rendering of multiple vtkPolyData using LIC interface and OpenGL.
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkBatchedSurfaceLICMapper * New()
void AppendOneBufferObject(vtkRenderer *ren, vtkActor *act, GLBatchElement *glBatchElement, vtkIdType &flat_index, std::vector< unsigned char > &colors, std::vector< float > &norms) override
Build the VBO/IBO, called by UpdateBufferObjects.
void SetMapperShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Set the shader parameters related to the mapper/input data, called by UpdateShader.
void ReplaceShaderValues(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *ren, vtkActor *act) override
Perform string replacements on the shader templates.
~vtkBatchedSurfaceLICMapper() override
a simple class to control print indentation
Definition: vtkIndent.h:38
An OpenGL mapper for batched rendering of vtkPolyData.
abstract specification for renderers
Definition: vtkRenderer.h:71
int vtkIdType
Definition: vtkType.h:315