1 /*=========================================================================
4 Module: $RCSfile: marExperimentCT.cpp,v $
6 Date: $Date: 2009/05/14 13:55:07 $
7 Version: $Revision: 1.1 $
9 Copyright: (c) 2002, 2003
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.
16 =========================================================================*/
19 #include "marExperimentCT.h"
22 // ----------------------------------------------------------------------------
23 marExperimentCT::marExperimentCT( marParameters* p ) : marExperiment( p )
29 // ----------------------------------------------------------------------------
30 marContour* marExperimentCT::getContour( int point, int contour ) {
31 return ((marAxisCT *)getAxis())->getContour(point,getDynData()->getVolume(),contour);
34 // ----------------------------------------------------------------------------
35 vtkPoints* marExperimentCT::get3Dcontour( int point, int contour ) {
36 return ((marAxisCT *)getAxis())->get3Dcontour(point,getDynData()->getVolume(),contour);
39 // ----------------------------------------------------------------------------
40 vtkPolyData* marExperimentCT::get2Dcontour( int point, int contour ) {
41 return ((marAxisCT *)getAxis())->get2Dcontour(point,getDynData()->getVolume(),contour);
44 // ----------------------------------------------------------------------------
45 vtkPoints* marExperimentCT::get2DDiameterMin( int point, int contour ) {
46 return ((marAxisCT *)getAxis())->get2DDiameterMin(point,getDynData()->getVolume(),contour);
49 // ----------------------------------------------------------------------------
50 vtkPoints* marExperimentCT::get2DDiameterMax( int point, int contour ) {
51 return ((marAxisCT *)getAxis())->get2DDiameterMax(point,getDynData()->getVolume(),contour);;
54 // ----------------------------------------------------------------------------
55 int marExperimentCT::getNumberOfContours(int point) {
56 return ((marAxisCT *)getAxis())->getNumberOfContours(point,getDynData()->getVolume( )) ;
59 // ----------------------------------------------------------------------------
60 void marExperimentCT::prepareQuantification( ) {
64 ((marAxisCT *)getAxis())->eraseContours();
65 ((marAxisCT *)getAxis())->createEmptyContours();
66 marExperiment::prepareQuantification();
71 // ----------------------------------------------------------------------------
72 void marExperimentCT::RegenerateAxis() {
75 ((marAxisCT *)getAxis())->eraseContours();
76 ((marAxisCT *)getAxis())->createEmptyContours();
77 // marExperiment::RegenerateAxis();
83 // ----------------------------------------------------------------------------
84 void marExperimentCT::RecalculateAxis() {
87 ((marAxisCT *)getAxis())->eraseContours();
88 ((marAxisCT *)getAxis())->createEmptyContours();
89 marExperiment::RecalculateAxis();
94 // ----------------------------------------------------------------------------
95 void marExperimentCT::updateLumenPercentage(int percentage)
97 int point = ((marAxisCT *)getAxis())->getActualQuant();
98 ((marAxisCT *)getAxis())->getParameters()->setLumenPercentage(percentage);
99 ((marAxisCT *)getAxis())->updateLumenPercentage(point,getDynData()->getVolume());
102 // ----------------------------------------------------------------------------
103 void marExperimentCT::updateCalcPercentage(int percentage)
105 int point = ((marAxisCT *)getAxis())->getActualQuant();
106 ((marAxisCT *)getAxis())->getParameters()->setCalcPercentage(percentage);
107 ((marAxisCT *)getAxis())->updateCalcPercentage(point,getDynData()->getVolume());
110 // ----------------------------------------------------------------------------
111 void marExperimentCT::updateDiscontinuityThreshold(int percentage)
113 ((marAxisCT *)getAxis())->getParameters()->setContourThresh(percentage);
114 ((marAxisCT *)getAxis())->eraseContours();
115 ((marAxisCT *)getAxis())->createEmptyContours();
116 ((marAxisCT *)getAxis())->setCalibration(false);
122 // ----------------------------------------------------------------------------
123 int marExperimentCT::getContourType(int point, int index) {
124 return ((marAxisCT *)getAxis())->getContourType(point, index, getDynData()->getVolume());
127 // ----------------------------------------------------------------------------
128 void marExperimentCT::histogram(int point) {
130 ((marAxisCT *)getAxis())->histogram(point, getDynData()->getVolume());
133 // ----------------------------------------------------------------------------
134 void marExperimentCT::setCalibration(bool calib)
136 ((marAxisCT *)getAxis())->setCalibration(calib);
139 // ----------------------------------------------------------------------------
140 bool marExperimentCT::getCalibration()
142 return ((marAxisCT *)getAxis())->getCalibration();
145 // ----------------------------------------------------------------------------
146 void marExperimentCT::ClearContoursPartial(int start)
148 ((marAxisCT *)getAxis())->eraseContoursPartial(start);
151 // ----------------------------------------------------------------------------
152 void marExperimentCT::setStartIndex(int start)
154 ((marAxisCT *)getAxis())->setStartIndex(start);
157 // ----------------------------------------------------------------------------
158 int marExperimentCT::getPointSize()
160 return ((marAxisCT *)getAxis())->getPointSize();
163 // ----------------------------------------------------------------------------
164 marPoint* marExperimentCT::getPoint(int i)
166 return ((marAxisCT *)getAxis())->getPoint(i);
169 // ----------------------------------------------------------------------------
170 void marExperimentCT::markUpLumen(int point)
172 ((marAxisCT *)getAxis())->markUpLumen(point, getDynData()->getVolume());
175 // ----------------------------------------------------------------------------
176 void marExperimentCT::generateFile()
178 int point = ((marAxisCT *)getAxis())->getActualQuant();
179 ((marAxisCT *)getAxis())->generateFile(point, getDynData()->getVolume());
182 // ----------------------------------------------------------------------------
183 void marExperimentCT::replaceContour2D(int size,double *vx,double *vy, int type)
185 int point = ((marAxisCT *)getAxis())->getActualQuant();
186 ((marAxisCT *)getAxis())->replaceContour2D(point,size,vx,vy,type);
189 // ----------------------------------------------------------------------------
190 void marExperimentCT::cleanContours(int type)
192 int point = ((marAxisCT *)getAxis())->getActualQuant();
193 ((marAxisCT *)getAxis())->cleanContours(type,point);
196 // ----------------------------------------------------------------------------
197 marIsocontour* marExperimentCT::loadMarIsocontour(int size, double *vx, double *vy)
199 return ((marAxisCT *)getAxis())->loadMarIsocontour(size,vx,vy);
202 // ----------------------------------------------------------------------------
203 double marExperimentCT::performXOR(int type, std::vector<marIsocontour*> manual)
205 int point = ((marAxisCT *)getAxis())->getActualQuant();
207 return ((marAxisCT *)getAxis())->performXOR(type,point,manual, getDynData()->getVolume());
210 // ----------------------------------------------------------------------------
211 double marExperimentCT::performAND(int type, std::vector<marIsocontour*> manual)
213 int point = ((marAxisCT *)getAxis())->getActualQuant();
215 return ((marAxisCT *)getAxis())->performAND(type,point,manual, getDynData()->getVolume());
220 // ----------------------------------------------------------------------------
221 double marExperimentCT::performUnion(int type, std::vector<marIsocontour*> manual)
223 int point = ((marAxisCT *)getAxis())->getActualQuant();
225 return ((marAxisCT *)getAxis())->performUnion(type,point,manual, getDynData()->getVolume());