Graphics/vtkMassProperties.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00057 #ifndef __vtkMassProperties_h
00058 #define __vtkMassProperties_h
00059
00060 #include "vtkProcessObject.h"
00061
00062 class vtkPolyData;
00063
00064 class VTK_GRAPHICS_EXPORT vtkMassProperties : public vtkProcessObject
00065 {
00066 public:
00068 static vtkMassProperties *New();
00069
00070 vtkTypeRevisionMacro(vtkMassProperties,vtkProcessObject);
00071 void PrintSelf(ostream& os, vtkIndent indent);
00072
00074 double GetVolume() {this->Update(); return this->Volume;}
00075
00077
00079 double GetVolumeX() {this->Update(); return this->VolumeX;}
00080 double GetVolumeY() {this->Update(); return this->VolumeY;}
00081 double GetVolumeZ() {this->Update(); return this->VolumeZ;}
00083
00085
00087 double GetKx() {this->Update(); return this->Kx;}
00088 double GetKy() {this->Update(); return this->Ky;}
00089 double GetKz() {this->Update(); return this->Kz;}
00091
00093 double GetSurfaceArea() {this->Update(); return this->SurfaceArea;}
00094
00096
00099 double GetNormalizedShapeIndex()
00100 {this->Update(); return this->NormalizedShapeIndex;}
00102
00103 void Update();
00104
00105 void SetInput(vtkPolyData *input);
00106 vtkPolyData *GetInput();
00107
00108 protected:
00109 vtkMassProperties();
00110 ~vtkMassProperties();
00111
00112 void Execute();
00113
00114 double SurfaceArea;
00115 double Volume;
00116 double VolumeX;
00117 double VolumeY;
00118 double VolumeZ;
00119 double Kx;
00120 double Ky;
00121 double Kz;
00122 double NormalizedShapeIndex;
00123 vtkTimeStamp ExecuteTime;
00124
00125 private:
00126 vtkMassProperties(const vtkMassProperties&);
00127 void operator=(const vtkMassProperties&);
00128 };
00129
00130 #endif
00131
00132