Graphics/vtkCleanPolyData.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00066 #ifndef __vtkCleanPolyData_h
00067 #define __vtkCleanPolyData_h
00068
00069 #include "vtkPolyDataToPolyDataFilter.h"
00070
00071 class vtkPointLocator;
00072
00073 class VTK_GRAPHICS_EXPORT vtkCleanPolyData : public vtkPolyDataToPolyDataFilter
00074 {
00075 public:
00076 static vtkCleanPolyData *New();
00077 void PrintSelf(ostream& os, vtkIndent indent);
00078 vtkTypeRevisionMacro(vtkCleanPolyData,vtkPolyDataToPolyDataFilter);
00079
00081
00084 vtkSetMacro(ToleranceIsAbsolute,int);
00085 vtkBooleanMacro(ToleranceIsAbsolute,int);
00086 vtkGetMacro(ToleranceIsAbsolute,int);
00088
00090
00091 vtkSetClampMacro(Tolerance,float,0.0,1.0);
00092 vtkGetMacro(Tolerance,float);
00094
00096
00097 vtkSetClampMacro(AbsoluteTolerance,float,0.0,VTK_LARGE_FLOAT);
00098 vtkGetMacro(AbsoluteTolerance,float);
00100
00102
00103 vtkSetMacro(ConvertLinesToPoints,int);
00104 vtkBooleanMacro(ConvertLinesToPoints,int);
00105 vtkGetMacro(ConvertLinesToPoints,int);
00107
00109
00110 vtkSetMacro(ConvertPolysToLines,int);
00111 vtkBooleanMacro(ConvertPolysToLines,int);
00112 vtkGetMacro(ConvertPolysToLines,int);
00114
00116
00117 vtkSetMacro(ConvertStripsToPolys,int);
00118 vtkBooleanMacro(ConvertStripsToPolys,int);
00119 vtkGetMacro(ConvertStripsToPolys,int);
00121
00123
00127 vtkSetMacro(PointMerging,int);
00128 vtkGetMacro(PointMerging,int);
00129 vtkBooleanMacro(PointMerging,int);
00131
00133
00135 void SetLocator(vtkPointLocator *locator);
00136 vtkGetObjectMacro(Locator,vtkPointLocator);
00138
00140 void CreateDefaultLocator(void);
00141
00143 void ReleaseLocator(void);
00144
00146 unsigned long int GetMTime();
00147
00149 virtual void OperateOnPoint(float in[3], float out[3]);
00150
00152 virtual void OperateOnBounds(float in[6], float out[6]);
00153
00154
00155
00156
00157
00158
00159 vtkSetMacro(PieceInvariant, int);
00160 vtkGetMacro(PieceInvariant, int);
00161 vtkBooleanMacro(PieceInvariant, int);
00162
00163 protected:
00164 vtkCleanPolyData();
00165 ~vtkCleanPolyData();
00166
00167
00168 void Execute();
00169 void ExecuteInformation();
00170 virtual void ComputeInputUpdateExtents(vtkDataObject *output);
00171
00172 int PointMerging;
00173 float Tolerance;
00174 float AbsoluteTolerance;
00175 int ConvertLinesToPoints;
00176 int ConvertPolysToLines;
00177 int ConvertStripsToPolys;
00178 int ToleranceIsAbsolute;
00179 vtkPointLocator *Locator;
00180
00181 int PieceInvariant;
00182 private:
00183 vtkCleanPolyData(const vtkCleanPolyData&);
00184 void operator=(const vtkCleanPolyData&);
00185 };
00186
00187 #endif
00188
00189