VTK
vtkPointGaussianMapper.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4 
5  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
6  All rights reserved.
7  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
29 #ifndef vtkPointGaussianMapper_h
30 #define vtkPointGaussianMapper_h
31 
32 #include "vtkRenderingCoreModule.h" // For export macro
33 #include "vtkPolyDataMapper.h"
34 
36 
37 class VTKRENDERINGCORE_EXPORT vtkPointGaussianMapper : public vtkPolyDataMapper
38 {
39 public:
40  static vtkPointGaussianMapper* New();
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
45 
49  void SetScaleFunction(vtkPiecewiseFunction *);
50  vtkGetObjectMacro(ScaleFunction,vtkPiecewiseFunction);
52 
54 
58  vtkSetMacro(ScaleTableSize, int);
59  vtkGetMacro(ScaleTableSize, int);
61 
63 
66  vtkSetStringMacro(ScaleArray);
67  vtkGetStringMacro(ScaleArray);
69 
71 
74  vtkSetMacro(ScaleArrayComponent, int);
75  vtkGetMacro(ScaleArrayComponent, int);
77 
79 
87  vtkSetMacro(ScaleFactor,double);
88  vtkGetMacro(ScaleFactor,double);
90 
92 
95  vtkSetMacro(Emissive, int);
96  vtkGetMacro(Emissive, int);
97  vtkBooleanMacro(Emissive, int);
99 
101 
105  void SetScalarOpacityFunction(vtkPiecewiseFunction *);
106  vtkGetObjectMacro(ScalarOpacityFunction,vtkPiecewiseFunction);
108 
110 
114  vtkSetMacro(OpacityTableSize, int);
115  vtkGetMacro(OpacityTableSize, int);
117 
119 
123  vtkSetStringMacro(OpacityArray);
124  vtkGetStringMacro(OpacityArray);
126 
128 
131  vtkSetMacro(OpacityArrayComponent, int);
132  vtkGetMacro(OpacityArrayComponent, int);
134 
136 
145  vtkSetStringMacro(SplatShaderCode);
146  vtkGetStringMacro(SplatShaderCode);
148 
150 
163  vtkSetMacro(TriangleScale,float);
164  vtkGetMacro(TriangleScale,float);
166 
167 protected:
169  ~vtkPointGaussianMapper() override;
170 
171  char *ScaleArray;
172  int ScaleArrayComponent;
173  char *OpacityArray;
174  int OpacityArrayComponent;
175  char *SplatShaderCode;
176 
177  vtkPiecewiseFunction *ScaleFunction;
178  int ScaleTableSize;
179 
180  vtkPiecewiseFunction *ScalarOpacityFunction;
181  int OpacityTableSize;
182 
183  double ScaleFactor;
184  int Emissive;
185 
186  float TriangleScale;
187 
188 private:
189  vtkPointGaussianMapper(const vtkPointGaussianMapper&) = delete;
190  void operator=(const vtkPointGaussianMapper&) = delete;
191 };
192 
193 #endif
Defines a 1D piecewise function.
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
map vtkPolyData to graphics primitives
static vtkPolyDataMapper * New()
draw PointGaussians using imposters
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.