2 #include "figureCuttingModel.h"
4 //----------------------------------------------------------------------------
5 //----------------------------------------------------------------------------
6 //----------------------------------------------------------------------------
7 figureCuttingModel::figureCuttingModel()
9 _inversModel = vtkTransform::New();
10 _matrixModel = vtkTransform::New();
11 _matrixVisual = vtkTransform::New();
17 //----------------------------------------------------------------------------
18 figureCuttingModel::~figureCuttingModel() // virtual
20 _inversModel->Delete();
22 //----------------------------------------------------------------------------
23 void figureCuttingModel::SetPosition(double x,double y, double z)
29 //----------------------------------------------------------------------------
30 void figureCuttingModel::SetScale(double sx,double sy, double sz)
36 //----------------------------------------------------------------------------
37 void figureCuttingModel::SetRotation(double alfa,double beta, double teta)
44 //----------------------------------------------------------------------------
45 void figureCuttingModel::CalculeMatrix()
47 _matrixModel->Identity();
48 _matrixModel->Translate(_px,_py,_pz);
49 _matrixModel->RotateY(_beta);
50 _matrixModel->RotateX(_alfa);
51 _matrixModel->RotateY(_teta);
52 _matrixModel->Scale(_sx,_sy,_sz);
54 _matrixVisual->Identity();
55 _matrixVisual->Translate( _px*_spcX , _py*_spcY , _pz*_spcZ );
56 _matrixVisual->RotateY(_beta);
57 _matrixVisual->RotateX(_alfa);
58 _matrixVisual->RotateY(_teta);
59 _matrixVisual->Scale( _sx*_spcX , _sy*_spcY , _sz*_spcZ );
64 //----------------------------------------------------------------------------
65 void figureCuttingModel::CalculeInversMatrix()
67 _inversModel->Identity ();
68 _inversModel->Concatenate ( _matrixModel );
69 _inversModel->Inverse();
71 //----------------------------------------------------------------------------
72 bool figureCuttingModel::IfPointInside(double x, double y, double z) // virtual
77 //----------------------------------------------------------------------------
78 vtkTransform *figureCuttingModel::GetVtkTransform()
83 //----------------------------------------------------------------------------
84 //void figureCuttingModel::SetVtkTransform(vtkTransform *matrix)
86 // _matrixModel = matrix;
89 //----------------------------------------------------------------------------
90 double figureCuttingModel::GetTheoricVolume() // virtual
95 //----------------------------------------------------------------------------
96 double figureCuttingModel::GetPositionX()
100 //----------------------------------------------------------------------------
101 double figureCuttingModel::GetPositionY()
105 //----------------------------------------------------------------------------
106 double figureCuttingModel::GetPositionZ()
110 //----------------------------------------------------------------------------
111 double figureCuttingModel::GetScaleX()
115 //----------------------------------------------------------------------------
116 double figureCuttingModel::GetScaleY()
120 //----------------------------------------------------------------------------
121 double figureCuttingModel::GetScaleZ()
125 //----------------------------------------------------------------------------
126 double figureCuttingModel::GetAngleAlfa()
130 //----------------------------------------------------------------------------
131 double figureCuttingModel::GetAngleBeta()
135 //----------------------------------------------------------------------------
136 double figureCuttingModel::GetAngleTeta()
140 //----------------------------------------------------------------------------
141 const char *figureCuttingModel::GetName() // virtual
146 //----------------------------------------------------------------------------
147 void figureCuttingModel::SetSpacing(double spcX,double spcY, double spcZ)