VTK
vtkDensifyPointCloudFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDensifyPointCloudFilter.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See LICENSE file 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 =========================================================================*/
51 #ifndef vtkDensifyPointCloudFilter_h
52 #define vtkDensifyPointCloudFilter_h
53 
54 #include "vtkFiltersPointsModule.h" // For export macro
55 #include "vtkPolyDataAlgorithm.h"
56 
57 class VTKFILTERSPOINTS_EXPORT vtkDensifyPointCloudFilter : public vtkPolyDataAlgorithm
58 {
59 public:
61 
67  void PrintSelf(ostream& os, vtkIndent indent) override;
69 
79  {
80  RADIUS=0,
81  N_CLOSEST=1
82  };
83 
85 
90  vtkSetMacro(NeighborhoodType,int);
91  vtkGetMacro(NeighborhoodType,int);
93  { this->SetNeighborhoodType(RADIUS); }
95  { this->SetNeighborhoodType(N_CLOSEST); }
97 
99 
104  vtkSetClampMacro(Radius,double,1,VTK_DOUBLE_MAX);
105  vtkGetMacro(Radius,double);
107 
109 
114  vtkSetClampMacro(NumberOfClosestPoints,int,1,VTK_INT_MAX);
115  vtkGetMacro(NumberOfClosestPoints,int);
117 
119 
127  vtkSetClampMacro(TargetDistance,double,0.0,VTK_DOUBLE_MAX);
128  vtkGetMacro(TargetDistance,double);
130 
132 
136  vtkSetClampMacro(MaximumNumberOfIterations, int, 1, VTK_SHORT_MAX);
137  vtkGetMacro(MaximumNumberOfIterations, int);
139 
141 
148  vtkSetClampMacro(MaximumNumberOfPoints,vtkIdType,1,VTK_ID_MAX);
149  vtkGetMacro(MaximumNumberOfPoints,vtkIdType);
151 
153 
157  vtkSetMacro(InterpolateAttributeData,bool);
158  vtkGetMacro(InterpolateAttributeData,bool);
159  vtkBooleanMacro(InterpolateAttributeData,bool);
161 
162 protected:
164  ~vtkDensifyPointCloudFilter() override;
165 
166  // Data members
168  double Radius;
174 
175  // Pipeline management
177  vtkInformationVector *) override;
178  int FillInputPortInformation(int port, vtkInformation *info) override;
179 
180 private:
182  void operator=(const vtkDensifyPointCloudFilter&) = delete;
183 
184 };
185 
186 #endif
vtkDensifyPointCloudFilter::NeighborhoodType
NeighborhoodType
This enum is used to specify how the local point neighborhood is defined.
Definition: vtkDensifyPointCloudFilter.h:78
VTK_INT_MAX
#define VTK_INT_MAX
Definition: vtkType.h:159
vtkIdType
int vtkIdType
Definition: vtkType.h:347
vtkDensifyPointCloudFilter::NumberOfClosestPoints
int NumberOfClosestPoints
Definition: vtkDensifyPointCloudFilter.h:169
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkDensifyPointCloudFilter::TargetDistance
double TargetDistance
Definition: vtkDensifyPointCloudFilter.h:170
vtkDensifyPointCloudFilter::InterpolateAttributeData
bool InterpolateAttributeData
Definition: vtkDensifyPointCloudFilter.h:172
vtkPolyDataAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkDensifyPointCloudFilter::MaximumNumberOfIterations
int MaximumNumberOfIterations
Definition: vtkDensifyPointCloudFilter.h:171
vtkDensifyPointCloudFilter::SetNeighborhoodTypeToNClosest
void SetNeighborhoodTypeToNClosest()
Definition: vtkDensifyPointCloudFilter.h:94
vtkPolyDataAlgorithm.h
vtkX3D::port
Definition: vtkX3D.h:447
vtkDensifyPointCloudFilter::MaximumNumberOfPoints
vtkIdType MaximumNumberOfPoints
Definition: vtkDensifyPointCloudFilter.h:173
vtkPolyDataAlgorithm::RequestData
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkDensifyPointCloudFilter::Radius
double Radius
Definition: vtkDensifyPointCloudFilter.h:168
VTK_SHORT_MAX
#define VTK_SHORT_MAX
Definition: vtkType.h:155
vtkDensifyPointCloudFilter::SetNeighborhoodTypeToRadius
void SetNeighborhoodTypeToRadius()
Definition: vtkDensifyPointCloudFilter.h:92
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkPolyDataAlgorithm::FillInputPortInformation
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkX3D::info
Definition: vtkX3D.h:376
VTK_ID_MAX
#define VTK_ID_MAX
Definition: vtkType.h:351
vtkDensifyPointCloudFilter
add points to a point cloud to make it denser
Definition: vtkDensifyPointCloudFilter.h:57
vtkDensifyPointCloudFilter::NeighborhoodType
int NeighborhoodType
Definition: vtkDensifyPointCloudFilter.h:167
VTK_DOUBLE_MAX
#define VTK_DOUBLE_MAX
Definition: vtkType.h:169
vtkPolyDataAlgorithm::New
static vtkPolyDataAlgorithm * New()
vtkPolyDataAlgorithm
Superclass for algorithms that produce only polydata as output.
Definition: vtkPolyDataAlgorithm.h:44