00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00058
#ifndef __vtkCurvatures_h
00059
#define __vtkCurvatures_h
00060
00061
#include "vtkPolyDataToPolyDataFilter.h"
00062
00063 #define VTK_CURVATURE_GAUSS 0
00064 #define VTK_CURVATURE_MEAN 1
00065
00066 class VTK_GRAPHICS_EXPORT vtkCurvatures :
public vtkPolyDataToPolyDataFilter
00067 {
00068
public:
00069 vtkTypeRevisionMacro(vtkCurvatures,
vtkPolyDataToPolyDataFilter);
00070
void PrintSelf(ostream& os,
vtkIndent indent);
00071
00073
static vtkCurvatures *
New();
00074
00076
00079 vtkSetMacro(CurvatureType,
int);
00080 vtkGetMacro(CurvatureType,
int);
00081 void SetCurvatureTypeToGaussian()
00082 { this->SetCurvatureType(
VTK_CURVATURE_GAUSS); }
00083 void SetCurvatureTypeToMean()
00084 { this->SetCurvatureType(
VTK_CURVATURE_MEAN); }
00086
00088
00090 vtkSetMacro(InvertMeanCurvature,
int);
00091 vtkGetMacro(InvertMeanCurvature,
int);
00092 vtkBooleanMacro(InvertMeanCurvature,
int);
00094
protected:
00095 vtkCurvatures();
00096
00097
00098
void Execute();
00099
00102
void GetGaussCurvature();
00103
00104
00105
00106
void GetMeanCurvature();
00107
00108
00109 int CurvatureType;
00110 int InvertMeanCurvature;
00111
00112
private:
00113 vtkCurvatures(
const vtkCurvatures&);
00114
void operator=(
const vtkCurvatures&);
00115
00116 };
00117
00118
#endif
00119
00120