]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour/manualViewBullEye.cpp
6d3cbc3c6e8cbde1413260c1ba12d4f86ad11381
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / manualContour / manualViewBullEye.cpp
1 #include "manualViewBullEye.h"
2
3 // ----------------------------------------------------------------------------
4 // ----------------------------------------------------------------------------
5 // ----------------------------------------------------------------------------
6
7 manualViewBullEye::manualViewBullEye()
8 {
9 }
10
11 // ----------------------------------------------------------------------------
12 manualViewBullEye::~manualViewBullEye()
13 {
14         // BullEye(s)
15         int i,size=lstSectorBullEye.size();
16         for (i=0;i<size;i++)
17         {
18                 delete lstSectorBullEye[i];
19         }
20         lstSectorBullEye.clear();
21 }
22
23
24 // ----------------------------------------------------------------------------
25 manualViewBullEye * manualViewBullEye :: Clone()
26 {
27         manualViewBullEye * clone = new manualViewBullEye();
28         CopyAttributesTo(clone);
29         return clone;
30 }
31
32 // ---------------------------------------------------------------------------
33
34 void manualViewBullEye::CopyAttributesTo( manualViewBullEye * cloneObject)
35 {
36         // Fathers object
37         manualViewBaseContour::CopyAttributesTo(cloneObject);
38 }
39
40
41 // ----------------------------------------------------------------------------
42 int manualViewBullEye::GetType() // virtual
43 {
44         return 4;
45 }
46
47
48 // ----------------------------------------------------------------------------
49 void manualViewBullEye::RefreshContour() // virtual
50 {
51         // External Rectangle
52         manualViewRoi::RefreshContour();
53
54         _manContModel->UpdateSpline();
55     int np      = GetNumberOfPoints( );
56         // Refres sectors of BullEye(s)
57
58         if (np>=2  )
59         {
60                 int i,size = lstSectorBullEye.size();
61                 for (i=0;i<size;i++)
62                 {
63                         lstSectorBullEye[i]->RefreshContour();
64                 } // for
65         } // if
66
67
68 }
69
70 // ----------------------------------------------------------------------------
71 void manualViewBullEye::ConstructVTKObjects() // virtual
72 {
73         manualViewRoi::ConstructVTKObjects();
74
75         double spc[3];
76         this->GetSpacing(spc);
77         manualViewBullEyeSector *mvbc;
78         manualContourModelBullEye *mcmbe = (manualContourModelBullEye*)this->_manContModel;
79         int i,size = mcmbe->GetSizeOfSectorLst();
80         for ( i=0 ; i<size ; i++ )
81         {
82                 mvbc = new manualViewBullEyeSector();
83                 mvbc->SetModel( mcmbe->GetModelSector(i) );
84                 mvbc->SetWxVtkBaseView( this->GetWxVtkBaseView()  );
85                 mvbc->SetRange( 2 );
86                 mvbc->SetZ( 1000 );
87                 mvbc->SetSpacing(spc);
88                 mvbc->SetColorNormalContour(1, 0, 0);
89 //              mvbc->SetColorEditContour(0.5, 0.5, 0.5);
90 //              mvbc->SetColorSelectContour(1, 0.8, 0);
91                 mvbc->SetWidthLine( this->GetWidthLine()  );
92 //EED004
93                 mvbc->ConstructVTKObjects();
94                 lstSectorBullEye.push_back( mvbc );
95         }
96
97
98 }
99
100 // ----------------------------------------------------------------------------
101 void manualViewBullEye::AddSplineActor()  // virtual
102 {
103         manualViewRoi::AddSplineActor();
104         int i,size=lstSectorBullEye.size();
105         for (i=0;i<size;i++)
106         {
107                 lstSectorBullEye[i]->AddSplineActor();
108         }
109 }
110
111 // ----------------------------------------------------------------------------
112 void manualViewBullEye::RemoveSplineActor()  // virtual
113 {
114         manualViewRoi::RemoveSplineActor();
115         int i,size=lstSectorBullEye.size();
116         for (i=0;i<size;i++)
117         {
118                 lstSectorBullEye[i]->RemoveSplineActor();
119         }
120 }