VTK  9.3.1
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
65 #ifndef vtkPolyDataPointSampler_h
66 #define vtkPolyDataPointSampler_h
67 
68 #include "vtkEdgeTable.h" // for sampling edges
69 #include "vtkFiltersModelingModule.h" // For export macro
70 #include "vtkNew.h" // for data members
71 #include "vtkPolyDataAlgorithm.h"
72 
73 VTK_ABI_NAMESPACE_BEGIN
74 class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
75 {
76 public:
80  static vtkPolyDataPointSampler* New();
81 
83 
87  void PrintSelf(ostream& os, vtkIndent indent) override;
89 
91 
95  vtkSetClampMacro(Distance, double, 0.0, VTK_FLOAT_MAX);
96  vtkGetMacro(Distance, double);
98 
102  enum
103  {
105  RANDOM_GENERATION
106  };
107 
109 
114  vtkSetClampMacro(PointGenerationMode, int, REGULAR_GENERATION, RANDOM_GENERATION);
115  vtkGetMacro(PointGenerationMode, int);
116  void SetPointGenerationModeToRegular() { this->SetPointGenerationMode(REGULAR_GENERATION); }
117  void SetPointGenerationModeToRandom() { this->SetPointGenerationMode(RANDOM_GENERATION); }
119 
121 
125  vtkGetMacro(GenerateVertexPoints, bool);
126  vtkSetMacro(GenerateVertexPoints, bool);
127  vtkBooleanMacro(GenerateVertexPoints, bool);
129 
131 
135  vtkGetMacro(GenerateEdgePoints, bool);
136  vtkSetMacro(GenerateEdgePoints, bool);
137  vtkBooleanMacro(GenerateEdgePoints, bool);
139 
141 
145  vtkGetMacro(GenerateInteriorPoints, bool);
146  vtkSetMacro(GenerateInteriorPoints, bool);
147  vtkBooleanMacro(GenerateInteriorPoints, bool);
149 
151 
158  vtkGetMacro(GenerateVertices, bool);
159  vtkSetMacro(GenerateVertices, bool);
160  vtkBooleanMacro(GenerateVertices, bool);
162 
164 
172  vtkGetMacro(InterpolatePointData, bool);
173  vtkSetMacro(InterpolatePointData, bool);
174  vtkBooleanMacro(InterpolatePointData, bool);
176 
177 protected:
179  ~vtkPolyDataPointSampler() override = default;
180 
182 
183  double Distance;
185 
190 
192 
193 private:
195  void operator=(const vtkPolyDataPointSampler&) = delete;
196 };
197 
198 VTK_ABI_NAMESPACE_END
199 #endif
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
static vtkPolyDataAlgorithm * New()
#define VTK_FLOAT_MAX
Definition: vtkType.h:152
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:28
void SetPointGenerationModeToRandom()
Specify/retrieve the type of point generation: either regular point generation or random point genera...
void SetPointGenerationModeToRegular()
Specify/retrieve the type of point generation: either regular point generation or random point genera...
Store zero or more vtkInformation instances.
generate points from vtkPolyData
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.