#include <figureCuttingCubeModel.h>
Public Member Functions | |
figureCuttingCubeModel () | |
virtual | ~figureCuttingCubeModel () |
virtual bool | IfPointInside (double x, double y, double z) |
virtual double | GetTheoricVolume () |
virtual const char * | GetName () |
void | SetPosition (double x, double y, double z) |
double | GetPositionX () |
double | GetPositionY () |
double | GetPositionZ () |
void | SetScale (double sx, double sy, double sz) |
double | GetScaleX () |
double | GetScaleY () |
double | GetScaleZ () |
void | SetRotation (double alfa, double beta, double teta) |
double | GetAngleAlfa () |
double | GetAngleBeta () |
double | GetAngleTeta () |
void | SetSpacing (double spcX, double spcY, double spcZ) |
void | CalculeMatrix () |
void | CalculeInversMatrix () |
vtkTransform * | GetVtkTransform () |
Protected Attributes | |
double | _sx |
double | _sy |
double | _sz |
vtkTransform * | _inversModel |
vtkTransform * | _matrixModel |
vtkTransform * | _matrixVisual |
Definition at line 6 of file figureCuttingCubeModel.h.
figureCuttingCubeModel::figureCuttingCubeModel | ( | ) |
Definition at line 7 of file figureCuttingCubeModel.cxx.
figureCuttingCubeModel::~figureCuttingCubeModel | ( | ) | [virtual] |
Definition at line 11 of file figureCuttingCubeModel.cxx.
void figureCuttingModel::CalculeInversMatrix | ( | ) | [inherited] |
Definition at line 65 of file figureCuttingModel.cxx.
References figureCuttingModel::_inversModel, and figureCuttingModel::_matrixModel.
Referenced by wxPanelCuttingImageData::OnExtract().
00066 { 00067 _inversModel->Identity (); 00068 _inversModel->Concatenate ( _matrixModel ); 00069 _inversModel->Inverse(); 00070 }
void figureCuttingModel::CalculeMatrix | ( | ) | [inherited] |
Definition at line 45 of file figureCuttingModel.cxx.
References figureCuttingModel::_alfa, figureCuttingModel::_beta, figureCuttingModel::_matrixModel, figureCuttingModel::_matrixVisual, figureCuttingModel::_px, figureCuttingModel::_py, figureCuttingModel::_pz, figureCuttingModel::_spcX, figureCuttingModel::_spcY, figureCuttingModel::_spcZ, figureCuttingModel::_sx, figureCuttingModel::_sy, figureCuttingModel::_sz, and figureCuttingModel::_teta.
00046 { 00047 _matrixModel->Identity(); 00048 _matrixModel->Translate(_px,_py,_pz); 00049 _matrixModel->RotateY(_beta); 00050 _matrixModel->RotateX(_alfa); 00051 _matrixModel->RotateY(_teta); 00052 _matrixModel->Scale(_sx,_sy,_sz); 00053 00054 _matrixVisual->Identity(); 00055 _matrixVisual->Translate( _px*_spcX , _py*_spcY , _pz*_spcZ ); 00056 _matrixVisual->RotateY(_beta); 00057 _matrixVisual->RotateX(_alfa); 00058 _matrixVisual->RotateY(_teta); 00059 _matrixVisual->Scale( _sx*_spcX , _sy*_spcY , _sz*_spcZ ); 00060 00061 }
double figureCuttingModel::GetAngleAlfa | ( | ) | [inherited] |
Definition at line 126 of file figureCuttingModel.cxx.
References figureCuttingModel::_alfa.
00127 { 00128 return _alfa; 00129 }
double figureCuttingModel::GetAngleBeta | ( | ) | [inherited] |
Definition at line 131 of file figureCuttingModel.cxx.
References figureCuttingModel::_beta.
00132 { 00133 return _beta; 00134 }
double figureCuttingModel::GetAngleTeta | ( | ) | [inherited] |
Definition at line 136 of file figureCuttingModel.cxx.
References figureCuttingModel::_teta.
00137 { 00138 return _teta; 00139 }
const char * figureCuttingCubeModel::GetName | ( | ) | [virtual] |
Reimplemented from figureCuttingModel.
Definition at line 38 of file figureCuttingCubeModel.cxx.
double figureCuttingModel::GetPositionX | ( | ) | [inherited] |
Definition at line 96 of file figureCuttingModel.cxx.
References figureCuttingModel::_px.
00097 { 00098 return _px; 00099 }
double figureCuttingModel::GetPositionY | ( | ) | [inherited] |
Definition at line 101 of file figureCuttingModel.cxx.
References figureCuttingModel::_py.
00102 { 00103 return _py; 00104 }
double figureCuttingModel::GetPositionZ | ( | ) | [inherited] |
Definition at line 106 of file figureCuttingModel.cxx.
References figureCuttingModel::_pz.
00107 { 00108 return _pz; 00109 }
double figureCuttingModel::GetScaleX | ( | ) | [inherited] |
Definition at line 111 of file figureCuttingModel.cxx.
References figureCuttingModel::_sx.
00112 { 00113 return _sx; 00114 }
double figureCuttingModel::GetScaleY | ( | ) | [inherited] |
Definition at line 116 of file figureCuttingModel.cxx.
References figureCuttingModel::_sy.
00117 { 00118 return _sy; 00119 }
double figureCuttingModel::GetScaleZ | ( | ) | [inherited] |
Definition at line 121 of file figureCuttingModel.cxx.
References figureCuttingModel::_sz.
00122 { 00123 return _sz; 00124 }
double figureCuttingCubeModel::GetTheoricVolume | ( | ) | [virtual] |
Reimplemented from figureCuttingModel.
Definition at line 32 of file figureCuttingCubeModel.cxx.
References figureCuttingModel::_sx, figureCuttingModel::_sy, and figureCuttingModel::_sz.
vtkTransform * figureCuttingModel::GetVtkTransform | ( | ) | [inherited] |
Definition at line 78 of file figureCuttingModel.cxx.
References figureCuttingModel::_matrixVisual.
Referenced by wxPanelCuttingImageData::Create3DViewObjects().
00079 { 00080 return _matrixVisual; 00081 }
bool figureCuttingCubeModel::IfPointInside | ( | double | x, | |
double | y, | |||
double | z | |||
) | [virtual] |
Reimplemented from figureCuttingModel.
Definition at line 15 of file figureCuttingCubeModel.cxx.
References figureCuttingModel::_inversModel.
00016 { 00017 double in[4],out[4]; 00018 in[0]=x; 00019 in[1]=y; 00020 in[2]=z; 00021 in[3]=1; 00022 _inversModel->MultiplyPoint (in, out); 00023 00024 bool result=false; 00025 if ((out[0]>-0.5) && (out[0]<0.5) && (out[1]>-0.5) && (out[1]<0.5) && (out[2]>-0.5) && (out[2]<0.5) ) 00026 { 00027 result=true; 00028 } 00029 return result; 00030 }
void figureCuttingModel::SetPosition | ( | double | x, | |
double | y, | |||
double | z | |||
) | [inherited] |
Definition at line 23 of file figureCuttingModel.cxx.
References figureCuttingModel::_px, figureCuttingModel::_py, and figureCuttingModel::_pz.
void figureCuttingModel::SetRotation | ( | double | alfa, | |
double | beta, | |||
double | teta | |||
) | [inherited] |
Definition at line 37 of file figureCuttingModel.cxx.
References figureCuttingModel::_alfa, figureCuttingModel::_beta, and figureCuttingModel::_teta.
void figureCuttingModel::SetScale | ( | double | sx, | |
double | sy, | |||
double | sz | |||
) | [inherited] |
Definition at line 30 of file figureCuttingModel.cxx.
References figureCuttingModel::_sx, figureCuttingModel::_sy, and figureCuttingModel::_sz.
void figureCuttingModel::SetSpacing | ( | double | spcX, | |
double | spcY, | |||
double | spcZ | |||
) | [inherited] |
Definition at line 147 of file figureCuttingModel.cxx.
References figureCuttingModel::_spcX, figureCuttingModel::_spcY, and figureCuttingModel::_spcZ.
vtkTransform* figureCuttingModel::_inversModel [protected, inherited] |
Definition at line 51 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeInversMatrix(), figureCuttingModel::figureCuttingModel(), figureCuttingSphereModel::IfPointInside(), figureCuttingCylinderModel::IfPointInside(), IfPointInside(), and figureCuttingModel::~figureCuttingModel().
vtkTransform* figureCuttingModel::_matrixModel [protected, inherited] |
Definition at line 52 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeInversMatrix(), figureCuttingModel::CalculeMatrix(), and figureCuttingModel::figureCuttingModel().
vtkTransform* figureCuttingModel::_matrixVisual [protected, inherited] |
Definition at line 53 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeMatrix(), figureCuttingModel::figureCuttingModel(), and figureCuttingModel::GetVtkTransform().
double figureCuttingModel::_sx [protected, inherited] |
Definition at line 48 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeMatrix(), figureCuttingModel::GetScaleX(), figureCuttingSphereModel::GetTheoricVolume(), figureCuttingCylinderModel::GetTheoricVolume(), GetTheoricVolume(), and figureCuttingModel::SetScale().
double figureCuttingModel::_sy [protected, inherited] |
Definition at line 49 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeMatrix(), figureCuttingModel::GetScaleY(), figureCuttingSphereModel::GetTheoricVolume(), figureCuttingCylinderModel::GetTheoricVolume(), GetTheoricVolume(), and figureCuttingModel::SetScale().
double figureCuttingModel::_sz [protected, inherited] |
Definition at line 50 of file figureCuttingModel.h.
Referenced by figureCuttingModel::CalculeMatrix(), figureCuttingModel::GetScaleZ(), figureCuttingSphereModel::GetTheoricVolume(), figureCuttingCylinderModel::GetTheoricVolume(), GetTheoricVolume(), and figureCuttingModel::SetScale().