Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkSmoothPolyDataFilter.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkSmoothPolyDataFilter.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00098 #ifndef __vtkSmoothPolyDataFilter_h
00099 #define __vtkSmoothPolyDataFilter_h
00100 
00101 #include "vtkPolyDataAlgorithm.h"
00102 
00103 class vtkSmoothPoints;
00104 
00105 class VTK_GRAPHICS_EXPORT vtkSmoothPolyDataFilter : public vtkPolyDataAlgorithm
00106 {
00107 public:
00108   vtkTypeRevisionMacro(vtkSmoothPolyDataFilter,vtkPolyDataAlgorithm);
00109   void PrintSelf(ostream& os, vtkIndent indent);
00110 
00116   static vtkSmoothPolyDataFilter *New();
00117 
00119 
00121   vtkSetClampMacro(Convergence,double,0.0,1.0);
00122   vtkGetMacro(Convergence,double);
00124 
00126 
00127   vtkSetClampMacro(NumberOfIterations,int,0,VTK_LARGE_INTEGER);
00128   vtkGetMacro(NumberOfIterations,int);
00130 
00132 
00137   vtkSetMacro(RelaxationFactor,double);
00138   vtkGetMacro(RelaxationFactor,double);
00140 
00142 
00143   vtkSetMacro(FeatureEdgeSmoothing,int);
00144   vtkGetMacro(FeatureEdgeSmoothing,int);
00145   vtkBooleanMacro(FeatureEdgeSmoothing,int);
00147 
00149 
00150   vtkSetClampMacro(FeatureAngle,double,0.0,180.0);
00151   vtkGetMacro(FeatureAngle,double);
00153 
00155 
00157   vtkSetClampMacro(EdgeAngle,double,0.0,180.0);
00158   vtkGetMacro(EdgeAngle,double);
00160 
00162 
00163   vtkSetMacro(BoundarySmoothing,int);
00164   vtkGetMacro(BoundarySmoothing,int);
00165   vtkBooleanMacro(BoundarySmoothing,int);
00167 
00169 
00170   vtkSetMacro(GenerateErrorScalars,int);
00171   vtkGetMacro(GenerateErrorScalars,int);
00172   vtkBooleanMacro(GenerateErrorScalars,int);
00174 
00176 
00177   vtkSetMacro(GenerateErrorVectors,int);
00178   vtkGetMacro(GenerateErrorVectors,int);
00179   vtkBooleanMacro(GenerateErrorVectors,int);
00181 
00183 
00186   void SetSource(vtkPolyData *source);
00187   vtkPolyData *GetSource();
00189   
00190 protected:
00191   vtkSmoothPolyDataFilter();
00192   ~vtkSmoothPolyDataFilter() {};
00193 
00194   virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00195   virtual int FillInputPortInformation(int port, vtkInformation *info);
00196 
00197   double Convergence;
00198   int NumberOfIterations;
00199   double RelaxationFactor;
00200   int FeatureEdgeSmoothing;
00201   double FeatureAngle;
00202   double EdgeAngle;
00203   int BoundarySmoothing;
00204   int GenerateErrorScalars;
00205   int GenerateErrorVectors;
00206 
00207   vtkSmoothPoints *SmoothPoints;
00208 private:
00209   vtkSmoothPolyDataFilter(const vtkSmoothPolyDataFilter&);  // Not implemented.
00210   void operator=(const vtkSmoothPolyDataFilter&);  // Not implemented.
00211 };
00212 
00213 #endif

Generated on Mon Jan 21 23:07:26 2008 for VTK by  doxygen 1.4.3-20050530