CutModelFigure.h

Go to the documentation of this file.
00001 #ifndef CUTTINGMODELFIGURE_H_
00002 #define CUTTINGMODELFIGURE_H_
00003 
00004 #include "vtkTransform.h"
00005 #include "vtkPolyData.h"
00006 
00007 class CutModelFigure
00008 {
00009 public:
00010         CutModelFigure(){}      
00011         
00012         virtual ~CutModelFigure(){}
00013 
00014         virtual void SetPosition(double x,double y, double z){
00015                 _px = x;
00016                 _py = y;
00017                 _pz = z;
00018         }
00019 
00020         virtual void    SetScale(double sx,double sy, double sz){
00021                 _sx = sx;
00022                 _sy = sy;
00023                 _sz = sz;
00024         }
00025 
00026         virtual void    SetRotation(double alfa,double beta, double teta){
00027         _alfa = alfa;
00028                 _beta = beta;
00029                 _teta = teta;
00030         }
00031 
00032         virtual void    SetSpacing(double spcX,double spcY, double spcZ){
00033                 _spcX = spcX;
00034                 _spcY = spcY;
00035                 _spcZ = spcZ;
00036         }               
00037 
00038         virtual void SetVtkTransform(vtkTransform *transform){
00039                 double *orient = transform->GetOrientation();
00040                 _alfa = orient[0];
00041                 _beta = orient[1];
00042                 _teta = orient[2];
00043 
00044                 double *scale = transform->GetScale();
00045                 _sx = scale[0];
00046                 _sy = scale[1];
00047                 _sz = scale[2];
00048 
00049                 double *position = transform->GetPosition();
00050                 _px = position[0];
00051                 _py = position[1];
00052                 _pz = position[2];
00053 
00054 
00055         }
00056         virtual void SetInversVtkTransform(vtkTransform *inverstransform){
00057                 _inversModel = inverstransform;
00058         }
00059 
00060         virtual bool IfPointInside(double x, double y, double z) = 0;
00061         virtual double  GetTheoricVolume()=0;   
00062         virtual vtkPolyData* getPolyData()=0;
00063 
00064 private:
00065         double                  _px;
00066         double                  _py;
00067         double                  _pz;
00068         double                  _alfa;
00069         double                  _beta;
00070         double                  _teta;
00071         double                  _spcX;
00072         double                  _spcY;
00073         double                  _spcZ;
00074         char *GetName;
00075 protected:
00076         double                  _sx;
00077         double                  _sy;
00078         double                  _sz;
00079         vtkTransform    *_inversModel;
00080         vtkTransform    *_matrixModel;  
00081 };
00082 
00083 #endif /*FIGURECUTTINGMODEL_H_*/

Generated on 20 Oct 2010 for creaMaracasVisu_lib by  doxygen 1.6.1