]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/CutModule/kernel/CutModelFigureCube.cxx
bbcfcf4b9800d08b52bac5e17fc27214364ad3ef
[creaMaracasVisu.git] / lib / maracasVisuLib / src / CutModule / kernel / CutModelFigureCube.cxx
1
2 #include "CutModelFigureCube.h"
3
4 //----------------------------------------------------------------------------
5 //----------------------------------------------------------------------------
6 //----------------------------------------------------------------------------
7 CutModelFigureCube::CutModelFigureCube()
8 : CutModelFigure()
9 {
10         _vtkcube = vtkCubeSource::New();
11         _vtkcube->SetXLength (1);
12         _vtkcube->SetYLength (1);
13         _vtkcube->SetZLength (1);
14 }
15 //----------------------------------------------------------------------------
16 CutModelFigureCube::~CutModelFigureCube()  // virtual
17 {
18         _vtkcube->Delete();
19 }
20 //----------------------------------------------------------------------------
21 bool CutModelFigureCube::IfPointInside(double x, double y, double z) // virtual
22 {
23         double in[4],out[4];
24         in[0]=x;
25         in[1]=y;
26         in[2]=z;
27         in[3]=1;
28         _inversModel->MultiplyPoint (in, out);
29
30         bool result=false;
31         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)  )
32         {
33                 result=true;
34         }
35         return result;
36 }
37 //----------------------------------------------------------------------------
38 double CutModelFigureCube::GetTheoricVolume() // virtual
39 {
40         return _sx * _sy * _sz;
41 }
42
43 //----------------------------------------------------------------------------
44 const char *CutModelFigureCube::GetName() // virtual
45 {
46         return "Cube";
47 }
48
49 vtkPolyData* CutModelFigureCube::getPolyData(){
50     return _vtkcube->GetOutput();
51 }
52