Drake Designer
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
vtkPlaneSegmentation.h
Go to the documentation of this file.
1 #ifndef __vtkPlaneSegmentation_h
2 #define __vtkPlaneSegmentation_h
3 
4 #include <vtkPolyDataAlgorithm.h>
5 #include <vtkDRCFiltersModule.h>
6 
7 class VTKDRCFILTERS_EXPORT vtkPlaneSegmentation : public vtkPolyDataAlgorithm
8 {
9 public:
10  vtkTypeMacro(vtkPlaneSegmentation, vtkPolyDataAlgorithm);
11  void PrintSelf(ostream& os, vtkIndent indent);
12 
13  static vtkPlaneSegmentation *New();
14 
15  vtkSetMacro(DistanceThreshold, double);
16  vtkGetMacro(DistanceThreshold, double);
17 
18  vtkSetMacro(MaxIterations, int);
19  vtkGetMacro(MaxIterations, int);
20 
21  vtkGetVector4Macro(PlaneCoefficients, double);
22  vtkGetVector3Macro(PlaneOrigin, double);
23  vtkGetVector3Macro(PlaneNormal, double);
24 
25  vtkSetMacro(PerpendicularConstraintEnabled, bool);
26  vtkGetMacro(PerpendicularConstraintEnabled, bool);
27 
28  vtkSetMacro(AngleEpsilon, double);
29  vtkGetMacro(AngleEpsilon, double);
30 
31  vtkGetVector3Macro(PerpendicularAxis, double);
32  vtkSetVector3Macro(PerpendicularAxis, double);
33 
34 protected:
35 
38 
40  double PerpendicularAxis[3];
41  double AngleEpsilon;
42 
43  double PlaneCoefficients[4];
44  double PlaneOrigin[3];
45  double PlaneNormal[3];
46 
47  virtual int RequestData(vtkInformation *request,
48  vtkInformationVector **inputVector,
49  vtkInformationVector *outputVector);
50 
51 
53  virtual ~vtkPlaneSegmentation();
54 
55 private:
56  vtkPlaneSegmentation(const vtkPlaneSegmentation&); // Not implemented.
57  void operator=(const vtkPlaneSegmentation&); // Not implemented.
58 };
59 
60 #endif
#define VTKDRCFILTERS_EXPORT