VTK
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 =========================================================================*/
44 #ifndef vtkPolyDataPointSampler_h
45 #define vtkPolyDataPointSampler_h
46 
47 #include "vtkFiltersModelingModule.h" // For export macro
48 #include "vtkPolyDataAlgorithm.h"
49 
50 class VTKFILTERSMODELING_EXPORT vtkPolyDataPointSampler : public vtkPolyDataAlgorithm
51 {
52 public:
56  static vtkPolyDataPointSampler *New();
57 
59 
63  void PrintSelf(ostream& os, vtkIndent indent);
65 
67 
71  vtkSetClampMacro(Distance,double,0.0,VTK_FLOAT_MAX);
72  vtkGetMacro(Distance,double);
74 
76 
80  vtkGetMacro(GenerateVertexPoints,int);
81  vtkSetMacro(GenerateVertexPoints,int);
82  vtkBooleanMacro(GenerateVertexPoints,int);
84 
86 
90  vtkGetMacro(GenerateEdgePoints,int);
91  vtkSetMacro(GenerateEdgePoints,int);
92  vtkBooleanMacro(GenerateEdgePoints,int);
94 
96 
100  vtkGetMacro(GenerateInteriorPoints,int);
101  vtkSetMacro(GenerateInteriorPoints,int);
102  vtkBooleanMacro(GenerateInteriorPoints,int);
104 
106 
113  vtkGetMacro(GenerateVertices,int);
114  vtkSetMacro(GenerateVertices,int);
115  vtkBooleanMacro(GenerateVertices,int);
117 
118 protected:
121 
123 
124  double Distance;
125  double Distance2;
126 
131 
132  void SampleEdge(vtkPoints *pts, double x0[3], double x1[3]);
133  void SampleTriangle(vtkPoints *newPts, vtkPoints *inPts,
134  vtkIdType *pts);
135  void SamplePolygon(vtkPoints *newPts, vtkPoints *inPts,
136  vtkIdType npts, vtkIdType *pts);
137 
138 private:
139  vtkPolyDataPointSampler(const vtkPolyDataPointSampler&) VTK_DELETE_FUNCTION;
140  void operator=(const vtkPolyDataPointSampler&) VTK_DELETE_FUNCTION;
141 };
142 
143 #endif
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
int vtkIdType
Definition: vtkType.h:287
static vtkPolyDataAlgorithm * New()
#define VTK_FLOAT_MAX
Definition: vtkType.h:161
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
generate points from vtkPolyData
represent and manipulate 3D points
Definition: vtkPoints.h:39
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.