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
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
72
73VTK_ABI_NAMESPACE_BEGIN
74class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
75{
76public:
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
177protected:
179 ~vtkPolyDataPointSampler() override = default;
180
182
183 double Distance;
185
190
192
193private:
195 void operator=(const vtkPolyDataPointSampler&) = delete;
196};
197
198VTK_ABI_NAMESPACE_END
199#endif
a simple class to control print indentation
Definition vtkIndent.h:29
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