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
81
82VTK_ABI_NAMESPACE_BEGIN
83class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
84{
85public:
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
186protected:
188 ~vtkPolyDataPointSampler() override = default;
189
191
192 double Distance;
194
199
201
202private:
204 void operator=(const vtkPolyDataPointSampler&) = delete;
205};
206
207VTK_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
static vtkPolyDataPointSampler * New()
Instantiate this class.
~vtkPolyDataPointSampler() override=default
void SetPointGenerationModeToRandom()
Specify/retrieve the type of point generation: either regular point generation or random point genera...
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