VTK  9.1.0
vtkPolyDataPointSampler.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPolyDataPointSampler.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
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 class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
83 {
84 public:
89 
91 
95  void PrintSelf(ostream& os, vtkIndent indent) override;
97 
99 
103  vtkSetClampMacro(Distance, double, 0.0, VTK_FLOAT_MAX);
104  vtkGetMacro(Distance, double);
106 
110  enum
111  {
113  RANDOM_GENERATION
114  };
115 
117 
122  vtkSetClampMacro(PointGenerationMode, int, REGULAR_GENERATION, RANDOM_GENERATION);
123  vtkGetMacro(PointGenerationMode, int);
124  void SetPointGenerationModeToRegular() { this->SetPointGenerationMode(REGULAR_GENERATION); }
125  void SetPointGenerationModeToRandom() { this->SetPointGenerationMode(RANDOM_GENERATION); }
127 
129 
133  vtkGetMacro(GenerateVertexPoints, bool);
134  vtkSetMacro(GenerateVertexPoints, bool);
135  vtkBooleanMacro(GenerateVertexPoints, bool);
137 
139 
143  vtkGetMacro(GenerateEdgePoints, bool);
144  vtkSetMacro(GenerateEdgePoints, bool);
145  vtkBooleanMacro(GenerateEdgePoints, bool);
147 
149 
153  vtkGetMacro(GenerateInteriorPoints, bool);
154  vtkSetMacro(GenerateInteriorPoints, bool);
155  vtkBooleanMacro(GenerateInteriorPoints, bool);
157 
159 
166  vtkGetMacro(GenerateVertices, bool);
167  vtkSetMacro(GenerateVertices, bool);
168  vtkBooleanMacro(GenerateVertices, bool);
170 
172 
180  vtkGetMacro(InterpolatePointData, bool);
181  vtkSetMacro(InterpolatePointData, bool);
182  vtkBooleanMacro(InterpolatePointData, bool);
184 
185 protected:
187  ~vtkPolyDataPointSampler() override = default;
188 
190 
191  double Distance;
193 
198 
200 
201 private:
203  void operator=(const vtkPolyDataPointSampler&) = delete;
204 };
205 
206 #endif
a simple class to control print indentation
Definition: vtkIndent.h:34
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:163