]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/kernel/marExperimentCT.cpp
BUG macOs
[creaMaracasVisu.git] / lib / maracasVisuLib / src / kernel / marExperimentCT.cpp
1 /*=========================================================================
2
3   Program:   wxMaracas
4   Module:    $RCSfile: marExperimentCT.cpp,v $
5   Language:  C++
6   Date:      $Date: 2008/10/31 16:32:55 $
7   Version:   $Revision: 1.1 $
8
9   Copyright: (c) 2002, 2003
10   License:
11   
12      This software is distributed WITHOUT ANY WARRANTY; without even 
13      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14      PURPOSE.  See the above copyright notice for more information.
15
16 =========================================================================*/
17
18
19 #include "marExperimentCT.h"
20
21
22 // ----------------------------------------------------------------------------
23 marExperimentCT::marExperimentCT( marParameters* p ) : marExperiment( p )
24                               
25 {
26   
27 }
28
29 // ----------------------------------------------------------------------------
30 marContour* marExperimentCT::getContour( int point, int contour ) {
31         return ((marAxisCT *)getAxis())->getContour(point,getDynData()->getVolume(),contour);
32 }
33
34 // ----------------------------------------------------------------------------
35 vtkPoints*      marExperimentCT::get3Dcontour( int point, int contour ) {
36         return ((marAxisCT *)getAxis())->get3Dcontour(point,getDynData()->getVolume(),contour);
37 }
38
39 // ----------------------------------------------------------------------------
40 vtkPolyData* marExperimentCT::get2Dcontour( int point, int contour ) {
41         return ((marAxisCT *)getAxis())->get2Dcontour(point,getDynData()->getVolume(),contour);
42 }
43
44 // ----------------------------------------------------------------------------
45 vtkPoints* marExperimentCT::get2DDiameterMin( int point, int contour ) {
46         return ((marAxisCT *)getAxis())->get2DDiameterMin(point,getDynData()->getVolume(),contour);
47 }
48
49 // ----------------------------------------------------------------------------
50 vtkPoints* marExperimentCT::get2DDiameterMax( int point, int contour ) {
51         return ((marAxisCT *)getAxis())->get2DDiameterMax(point,getDynData()->getVolume(),contour);;
52 }
53
54 // ----------------------------------------------------------------------------
55 int marExperimentCT::getNumberOfContours(int point) {
56         return ((marAxisCT *)getAxis())->getNumberOfContours(point,getDynData()->getVolume( )) ;
57 }
58
59 // ----------------------------------------------------------------------------
60 void marExperimentCT::prepareQuantification( ) {
61
62         if(getAxis())
63         {
64                 ((marAxisCT *)getAxis())->eraseContours();
65                 ((marAxisCT *)getAxis())->createEmptyContours();
66                 marExperiment::prepareQuantification();
67         }
68         
69 }
70
71 // ----------------------------------------------------------------------------
72 void marExperimentCT::RegenerateAxis() {
73
74         if (getAxis()!=NULL){
75                 ((marAxisCT *)getAxis())->eraseContours();
76                 ((marAxisCT *)getAxis())->createEmptyContours();
77         //      marExperiment::RegenerateAxis();
78         }
79
80         
81 }
82
83 // ----------------------------------------------------------------------------
84 void marExperimentCT::RecalculateAxis() {
85
86         if (getAxis()!=NULL){
87                 ((marAxisCT *)getAxis())->eraseContours();
88                 ((marAxisCT *)getAxis())->createEmptyContours();
89                 marExperiment::RecalculateAxis();
90         }
91         
92 }
93
94 // ----------------------------------------------------------------------------
95 void marExperimentCT::updateLumenPercentage(int percentage)
96 {
97         int point = ((marAxisCT *)getAxis())->getActualQuant();
98         ((marAxisCT *)getAxis())->getParameters()->setLumenPercentage(percentage);
99         ((marAxisCT *)getAxis())->updateLumenPercentage(point,getDynData()->getVolume());
100 }
101
102 // ----------------------------------------------------------------------------
103 void marExperimentCT::updateCalcPercentage(int percentage) 
104 {
105         int point = ((marAxisCT *)getAxis())->getActualQuant();
106         ((marAxisCT *)getAxis())->getParameters()->setCalcPercentage(percentage);
107         ((marAxisCT *)getAxis())->updateCalcPercentage(point,getDynData()->getVolume());
108 }
109
110 // ----------------------------------------------------------------------------
111 void marExperimentCT::updateDiscontinuityThreshold(int percentage)
112 {
113         ((marAxisCT *)getAxis())->getParameters()->setContourThresh(percentage);
114         ((marAxisCT *)getAxis())->eraseContours();
115         ((marAxisCT *)getAxis())->createEmptyContours();
116         ((marAxisCT *)getAxis())->setCalibration(false);
117
118 }
119
120
121
122 // ----------------------------------------------------------------------------
123 int     marExperimentCT::getContourType(int point, int index) {
124         return ((marAxisCT *)getAxis())->getContourType(point, index, getDynData()->getVolume());
125 }
126
127 // ----------------------------------------------------------------------------
128 void marExperimentCT::histogram(int point) {
129         
130         ((marAxisCT *)getAxis())->histogram(point, getDynData()->getVolume());
131 }
132
133 // ----------------------------------------------------------------------------
134 void marExperimentCT::setCalibration(bool calib)
135 {
136         ((marAxisCT *)getAxis())->setCalibration(calib);
137 }
138
139 // ----------------------------------------------------------------------------
140 bool marExperimentCT::getCalibration()
141 {
142         return ((marAxisCT *)getAxis())->getCalibration();
143 }
144
145 // ----------------------------------------------------------------------------
146 void marExperimentCT::ClearContoursPartial(int start)
147 {
148         ((marAxisCT *)getAxis())->eraseContoursPartial(start);
149 }
150
151 // ----------------------------------------------------------------------------
152 void marExperimentCT::setStartIndex(int start)
153 {
154         ((marAxisCT *)getAxis())->setStartIndex(start);
155 }
156
157 // ----------------------------------------------------------------------------
158 int     marExperimentCT::getPointSize()
159 {
160         return ((marAxisCT *)getAxis())->getPointSize();
161 }
162
163 // ----------------------------------------------------------------------------
164 marPoint* marExperimentCT::getPoint(int i)
165 {
166         return ((marAxisCT *)getAxis())->getPoint(i);
167 }
168
169 // ----------------------------------------------------------------------------
170 void marExperimentCT::markUpLumen(int point)
171 {
172         ((marAxisCT *)getAxis())->markUpLumen(point, getDynData()->getVolume());
173 }
174
175 // ----------------------------------------------------------------------------
176 void marExperimentCT::generateFile()
177 {
178         int point = ((marAxisCT *)getAxis())->getActualQuant();
179         ((marAxisCT *)getAxis())->generateFile(point, getDynData()->getVolume());
180 }
181
182 // ----------------------------------------------------------------------------
183 void marExperimentCT::replaceContour2D(int size,double *vx,double *vy, int type)
184 {
185         int point = ((marAxisCT *)getAxis())->getActualQuant();
186         ((marAxisCT *)getAxis())->replaceContour2D(point,size,vx,vy,type);
187 }
188
189 // ----------------------------------------------------------------------------
190 void marExperimentCT::cleanContours(int type)
191 {
192         int point = ((marAxisCT *)getAxis())->getActualQuant();
193         ((marAxisCT *)getAxis())->cleanContours(type,point);
194 }
195
196 // ----------------------------------------------------------------------------
197 marIsocontour* marExperimentCT::loadMarIsocontour(int size, double *vx, double *vy)
198 {
199         return ((marAxisCT *)getAxis())->loadMarIsocontour(size,vx,vy);
200 }
201
202 // ----------------------------------------------------------------------------
203 double marExperimentCT::performXOR(int type, std::vector<marIsocontour*> manual)
204 {
205         int point = ((marAxisCT *)getAxis())->getActualQuant();
206
207         return ((marAxisCT *)getAxis())->performXOR(type,point,manual, getDynData()->getVolume());
208 }
209
210 // ----------------------------------------------------------------------------
211 double marExperimentCT::performAND(int type, std::vector<marIsocontour*> manual)
212 {
213         int point = ((marAxisCT *)getAxis())->getActualQuant();
214          
215         return ((marAxisCT *)getAxis())->performAND(type,point,manual, getDynData()->getVolume());
216         
217
218 }
219
220 // ----------------------------------------------------------------------------
221 double marExperimentCT::performUnion(int type, std::vector<marIsocontour*> manual)
222 {
223         int point = ((marAxisCT *)getAxis())->getActualQuant();
224          
225         return ((marAxisCT *)getAxis())->performUnion(type,point,manual, getDynData()->getVolume());
226 }