VTK  9.3.0
vtkPolyDataPointSampler.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
74 #ifndef vtkPolyDataPointSampler_h
75 #define vtkPolyDataPointSampler_h
76 
77 #include "vtkEdgeTable.h" // for sampling edges
78 #include "vtkFiltersModelingModule.h" // For export macro
79 #include "vtkNew.h" // for data members
80 #include "vtkPolyDataAlgorithm.h"
81 
82 VTK_ABI_NAMESPACE_BEGIN
83 class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
84 {
85 public:
90 
92 
96  void PrintSelf(ostream& os, vtkIndent indent) override;
98 
100 
104  vtkSetClampMacro(Distance, double, 0.0, VTK_FLOAT_MAX);
105  vtkGetMacro(Distance, double);
107 
111  enum
112  {
114  RANDOM_GENERATION
115  };
116 
118 
123  vtkSetClampMacro(PointGenerationMode, int, REGULAR_GENERATION, RANDOM_GENERATION);
124  vtkGetMacro(PointGenerationMode, int);
125  void SetPointGenerationModeToRegular() { this->SetPointGenerationMode(REGULAR_GENERATION); }
126  void SetPointGenerationModeToRandom() { this->SetPointGenerationMode(RANDOM_GENERATION); }
128 
130 
134  vtkGetMacro(GenerateVertexPoints, bool);
135  vtkSetMacro(GenerateVertexPoints, bool);
136  vtkBooleanMacro(GenerateVertexPoints, bool);
138 
140 
144  vtkGetMacro(GenerateEdgePoints, bool);
145  vtkSetMacro(GenerateEdgePoints, bool);
146  vtkBooleanMacro(GenerateEdgePoints, bool);
148 
150 
154  vtkGetMacro(GenerateInteriorPoints, bool);
155  vtkSetMacro(GenerateInteriorPoints, bool);
156  vtkBooleanMacro(GenerateInteriorPoints, bool);
158 
160 
167  vtkGetMacro(GenerateVertices, bool);
168  vtkSetMacro(GenerateVertices, bool);
169  vtkBooleanMacro(GenerateVertices, bool);
171 
173 
181  vtkGetMacro(InterpolatePointData, bool);
182  vtkSetMacro(InterpolatePointData, bool);
183  vtkBooleanMacro(InterpolatePointData, bool);
185 
186 protected:
188  ~vtkPolyDataPointSampler() override = default;
189 
191 
192  double Distance;
194 
199 
201 
202 private:
204  void operator=(const vtkPolyDataPointSampler&) = delete;
205 };
206 
207 VTK_ABI_NAMESPACE_END
208 #endif
a simple class to control print indentation
Definition: vtkIndent.h:38
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
generate points from vtkPolyData
~vtkPolyDataPointSampler() override=default
void SetPointGenerationModeToRandom()
Specify/retrieve the type of point generation: either regular point generation or random point genera...
static vtkPolyDataPointSampler * New()
Instantiate this class.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard macros for type information and printing.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetPointGenerationModeToRegular()
Specify/retrieve the type of point generation: either regular point generation or random point genera...
#define VTK_FLOAT_MAX
Definition: vtkType.h:152