Graphics/vtkMassProperties.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00041 #ifndef __vtkMassProperties_h
00042 #define __vtkMassProperties_h
00043
00044 #include "vtkProcessObject.h"
00045
00046 class vtkPolyData;
00047
00048 class VTK_GRAPHICS_EXPORT vtkMassProperties : public vtkProcessObject
00049 {
00050 public:
00052 static vtkMassProperties *New();
00053
00054 vtkTypeRevisionMacro(vtkMassProperties,vtkProcessObject);
00055 void PrintSelf(ostream& os, vtkIndent indent);
00056
00058 double GetVolume() {this->Update(); return this->Volume;}
00059
00061
00063 double GetVolumeX() {this->Update(); return this->VolumeX;}
00064 double GetVolumeY() {this->Update(); return this->VolumeY;}
00065 double GetVolumeZ() {this->Update(); return this->VolumeZ;}
00067
00069
00071 double GetKx() {this->Update(); return this->Kx;}
00072 double GetKy() {this->Update(); return this->Ky;}
00073 double GetKz() {this->Update(); return this->Kz;}
00075
00077 double GetSurfaceArea() {this->Update(); return this->SurfaceArea;}
00078
00080
00083 double GetNormalizedShapeIndex()
00084 {this->Update(); return this->NormalizedShapeIndex;}
00086
00087 void Update();
00088
00089 void SetInput(vtkPolyData *input);
00090 vtkPolyData *GetInput();
00091
00092 protected:
00093 vtkMassProperties();
00094 ~vtkMassProperties();
00095
00096 void Execute();
00097
00098 double SurfaceArea;
00099 double Volume;
00100 double VolumeX;
00101 double VolumeY;
00102 double VolumeZ;
00103 double Kx;
00104 double Ky;
00105 double Kz;
00106 double NormalizedShapeIndex;
00107 vtkTimeStamp ExecuteTime;
00108
00109 private:
00110 vtkMassProperties(const vtkMassProperties&);
00111 void operator=(const vtkMassProperties&);
00112 };
00113
00114 #endif
00115
00116