VTK  9.4.20250421
vtkOpenGLPointGaussianMapperHelper.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
3
4#ifndef vtkOpenGLPointGaussianMapperHelper_h
5#define vtkOpenGLPointGaussianMapperHelper_h
6
8
9VTK_ABI_NAMESPACE_BEGIN
10
12
13class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLPointGaussianMapperHelper : public vtkOpenGLPolyDataMapper
14{
15public:
18 void PrintSelf(ostream& os, vtkIndent indent) override;
19
21
22 // set from parent
23 float* OpacityTable; // the table
24 double OpacityScale; // used for quick lookups
25 double OpacityOffset; // used for quick lookups
26 float* ScaleTable; // the table
27 double ScaleScale; // used for quick lookups
28 double ScaleOffset; // used for quick lookups
29
31
33 double BoundScale;
34
35 // called by our Owner skips some stuff
37
38protected:
41
42 // Description:
43 // Create the basic shaders before replacement
45 std::map<vtkShader::Type, vtkShader*> shaders, vtkRenderer*, vtkActor*) override;
46
47 // Description:
48 // Perform string replacements on the shader templates
50 std::map<vtkShader::Type, vtkShader*> shaders, vtkRenderer*, vtkActor*) override;
52 std::map<vtkShader::Type, vtkShader*> shaders, vtkRenderer*, vtkActor*) override;
53
54 // Description:
55 // Set the shader parameters related to the Camera
57
58 // Description:
59 // Set the shader parameters related to the actor/mapper
61
62 // Description:
63 // Does the VBO/IBO need to be rebuilt
65
66 // Description:
67 // Update the VBO to contain point based values
68 void BuildBufferObjects(vtkRenderer* ren, vtkActor* act) override;
69
70 void RenderPieceDraw(vtkRenderer* ren, vtkActor* act) override;
71
72 // Description:
73 // Does the shader source need to be recomputed
74 bool GetNeedToRebuildShaders(vtkOpenGLHelper& cellBO, vtkRenderer* ren, vtkActor* act) override;
75
76private:
78 void operator=(const vtkOpenGLPointGaussianMapperHelper&) = delete;
79};
80
81VTK_ABI_NAMESPACE_END
82#endif
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:151
a simple class to control print indentation
Definition vtkIndent.h:108
void GaussianRender(vtkRenderer *ren, vtkActor *act)
static vtkOpenGLPointGaussianMapperHelper * New()
void BuildBufferObjects(vtkRenderer *ren, vtkActor *act) override
Build the VBO/IBO, called by UpdateBufferObjects.
void SetCameraShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Set the shader parameters related to the Camera, called by UpdateShader.
void GetShaderTemplate(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *, vtkActor *) override
Create the basic shaders before replacement.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ReplaceShaderPositionVC(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *, vtkActor *) override
Perform string replacements on the shader templates, called from ReplaceShaderValues.
void SetMapperShaderParameters(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Set the shader parameters related to the mapper/input data, called by UpdateShader.
void ReplaceShaderColor(std::map< vtkShader::Type, vtkShader * > shaders, vtkRenderer *, vtkActor *) override
Perform string replacements on the shader templates, called from ReplaceShaderValues.
bool GetNeedToRebuildShaders(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Does the shader source need to be recomputed.
void RenderPieceDraw(vtkRenderer *ren, vtkActor *act) override
Implemented by sub classes.
bool GetNeedToRebuildBufferObjects(vtkRenderer *ren, vtkActor *act) override
Does the VBO/IBO need to be rebuilt.
PolyDataMapper using OpenGL to render.
draw PointGaussians using imposters
abstract specification for renderers
int vtkIdType
Definition vtkType.h:332