00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "marExperimentCT.h"
00020
00021
00022
00023 marExperimentCT::marExperimentCT( marParameters* p ) : marExperiment( p )
00024
00025 {
00026
00027 }
00028
00029
00030 marContour* marExperimentCT::getContour( int point, int contour ) {
00031 return ((marAxisCT *)getAxis())->getContour(point,getDynData()->getVolume(),contour);
00032 }
00033
00034
00035 vtkPoints* marExperimentCT::get3Dcontour( int point, int contour ) {
00036 return ((marAxisCT *)getAxis())->get3Dcontour(point,getDynData()->getVolume(),contour);
00037 }
00038
00039
00040 vtkPolyData* marExperimentCT::get2Dcontour( int point, int contour ) {
00041 return ((marAxisCT *)getAxis())->get2Dcontour(point,getDynData()->getVolume(),contour);
00042 }
00043
00044
00045 vtkPoints* marExperimentCT::get2DDiameterMin( int point, int contour ) {
00046 return ((marAxisCT *)getAxis())->get2DDiameterMin(point,getDynData()->getVolume(),contour);
00047 }
00048
00049
00050 vtkPoints* marExperimentCT::get2DDiameterMax( int point, int contour ) {
00051 return ((marAxisCT *)getAxis())->get2DDiameterMax(point,getDynData()->getVolume(),contour);;
00052 }
00053
00054
00055 int marExperimentCT::getNumberOfContours(int point) {
00056 return ((marAxisCT *)getAxis())->getNumberOfContours(point,getDynData()->getVolume( )) ;
00057 }
00058
00059
00060 void marExperimentCT::prepareQuantification( ) {
00061
00062 if(getAxis())
00063 {
00064 ((marAxisCT *)getAxis())->eraseContours();
00065 ((marAxisCT *)getAxis())->createEmptyContours();
00066 marExperiment::prepareQuantification();
00067 }
00068
00069 }
00070
00071
00072 void marExperimentCT::RegenerateAxis() {
00073
00074 if (getAxis()!=NULL){
00075 ((marAxisCT *)getAxis())->eraseContours();
00076 ((marAxisCT *)getAxis())->createEmptyContours();
00077
00078 }
00079
00080
00081 }
00082
00083
00084 void marExperimentCT::RecalculateAxis() {
00085
00086 if (getAxis()!=NULL){
00087 ((marAxisCT *)getAxis())->eraseContours();
00088 ((marAxisCT *)getAxis())->createEmptyContours();
00089 marExperiment::RecalculateAxis();
00090 }
00091
00092 }
00093
00094
00095 void marExperimentCT::updateLumenPercentage(int percentage)
00096 {
00097 int point = ((marAxisCT *)getAxis())->getActualQuant();
00098 ((marAxisCT *)getAxis())->getParameters()->setLumenPercentage(percentage);
00099 ((marAxisCT *)getAxis())->updateLumenPercentage(point,getDynData()->getVolume());
00100 }
00101
00102
00103 void marExperimentCT::updateCalcPercentage(int percentage)
00104 {
00105 int point = ((marAxisCT *)getAxis())->getActualQuant();
00106 ((marAxisCT *)getAxis())->getParameters()->setCalcPercentage(percentage);
00107 ((marAxisCT *)getAxis())->updateCalcPercentage(point,getDynData()->getVolume());
00108 }
00109
00110
00111 void marExperimentCT::updateDiscontinuityThreshold(int percentage)
00112 {
00113 ((marAxisCT *)getAxis())->getParameters()->setContourThresh(percentage);
00114 ((marAxisCT *)getAxis())->eraseContours();
00115 ((marAxisCT *)getAxis())->createEmptyContours();
00116 ((marAxisCT *)getAxis())->setCalibration(false);
00117
00118 }
00119
00120
00121
00122
00123 int marExperimentCT::getContourType(int point, int index) {
00124 return ((marAxisCT *)getAxis())->getContourType(point, index, getDynData()->getVolume());
00125 }
00126
00127
00128 void marExperimentCT::histogram(int point) {
00129
00130 ((marAxisCT *)getAxis())->histogram(point, getDynData()->getVolume());
00131 }
00132
00133
00134 void marExperimentCT::setCalibration(bool calib)
00135 {
00136 ((marAxisCT *)getAxis())->setCalibration(calib);
00137 }
00138
00139
00140 bool marExperimentCT::getCalibration()
00141 {
00142 return ((marAxisCT *)getAxis())->getCalibration();
00143 }
00144
00145
00146 void marExperimentCT::ClearContoursPartial(int start)
00147 {
00148 ((marAxisCT *)getAxis())->eraseContoursPartial(start);
00149 }
00150
00151
00152 void marExperimentCT::setStartIndex(int start)
00153 {
00154 ((marAxisCT *)getAxis())->setStartIndex(start);
00155 }
00156
00157
00158 int marExperimentCT::getPointSize()
00159 {
00160 return ((marAxisCT *)getAxis())->getPointSize();
00161 }
00162
00163
00164 marPoint* marExperimentCT::getPoint(int i)
00165 {
00166 return ((marAxisCT *)getAxis())->getPoint(i);
00167 }
00168
00169
00170 void marExperimentCT::markUpLumen(int point)
00171 {
00172 ((marAxisCT *)getAxis())->markUpLumen(point, getDynData()->getVolume());
00173 }
00174
00175
00176 void marExperimentCT::generateFile()
00177 {
00178 int point = ((marAxisCT *)getAxis())->getActualQuant();
00179 ((marAxisCT *)getAxis())->generateFile(point, getDynData()->getVolume());
00180 }
00181
00182
00183 void marExperimentCT::replaceContour2D(int size,double *vx,double *vy, int type)
00184 {
00185 int point = ((marAxisCT *)getAxis())->getActualQuant();
00186 ((marAxisCT *)getAxis())->replaceContour2D(point,size,vx,vy,type);
00187 }
00188
00189
00190 void marExperimentCT::cleanContours(int type)
00191 {
00192 int point = ((marAxisCT *)getAxis())->getActualQuant();
00193 ((marAxisCT *)getAxis())->cleanContours(type,point);
00194 }
00195
00196
00197 marIsocontour* marExperimentCT::loadMarIsocontour(int size, double *vx, double *vy)
00198 {
00199 return ((marAxisCT *)getAxis())->loadMarIsocontour(size,vx,vy);
00200 }
00201
00202
00203 double marExperimentCT::performXOR(int type, std::vector<marIsocontour*> manual)
00204 {
00205 int point = ((marAxisCT *)getAxis())->getActualQuant();
00206
00207 return ((marAxisCT *)getAxis())->performXOR(type,point,manual, getDynData()->getVolume());
00208 }
00209
00210
00211 double marExperimentCT::performAND(int type, std::vector<marIsocontour*> manual)
00212 {
00213 int point = ((marAxisCT *)getAxis())->getActualQuant();
00214
00215 return ((marAxisCT *)getAxis())->performAND(type,point,manual, getDynData()->getVolume());
00216
00217
00218 }
00219
00220
00221 double marExperimentCT::performUnion(int type, std::vector<marIsocontour*> manual)
00222 {
00223 int point = ((marAxisCT *)getAxis())->getActualQuant();
00224
00225 return ((marAxisCT *)getAxis())->performUnion(type,point,manual, getDynData()->getVolume());
00226 }