X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Fkernel_ManagerContour_NDimensions%2FKernelManagerContour.cxx;h=9d3f861c36c4e01e4ab0f245637e629d87b91f11;hb=refs%2Ftags%2FEED.02Oct2009;hp=93e21d5d355cc8489aa48fbafdbd75d595c1e139;hpb=a654abbc209ed3104e98553cb381ef1c2845937a;p=creaContours.git diff --git a/lib/kernel_ManagerContour_NDimensions/KernelManagerContour.cxx b/lib/kernel_ManagerContour_NDimensions/KernelManagerContour.cxx index 93e21d5..9d3f861 100644 --- a/lib/kernel_ManagerContour_NDimensions/KernelManagerContour.cxx +++ b/lib/kernel_ManagerContour_NDimensions/KernelManagerContour.cxx @@ -13,7 +13,13 @@ KernelManagerContour::KernelManagerContour(){ **/ inredo = 0; inundo = 0; - stundoredo = "data/temp"; + + time_t seconds; + seconds = time (NULL); + int time = seconds; + + + stundoredo = "data/temp"+intToString(time); _currentIndex = 0; _contourPropagation = NULL; @@ -28,7 +34,8 @@ KernelManagerContour::KernelManagerContour(){ **/ } -KernelManagerContour::KernelManagerContour(std::vector images){ +KernelManagerContour::KernelManagerContour(std::vector images,std::string datadir,std::string tmpdir) +{ /**THIS ALL SHOULD BE IN AN OTHER LIB CALLED PERSISTANCE @@ -36,38 +43,46 @@ KernelManagerContour::KernelManagerContour(std::vector images){ **/ inredo = 0; inundo = 0; - stundoredo = "data/temp"; - _currentIndex = 0; + time_t seconds; + seconds = time (NULL); + int time = seconds; + + + stundoredo = tmpdir+"/temp"+intToString(time); + _currentIndex = 0; + _contourPropagation = NULL; #if(WIN32) - mkdir(stundoredo.c_str()); + mkdir(tmpdir.c_str()); + mkdir(stundoredo.c_str()); #else - mkdir(stundoredo.c_str(),755); + mkdir(tmpdir.c_str(),755); + mkdir(stundoredo.c_str(),755); #endif stundoredo += "/cont"; /** ** FINISH PERSISTANCE **/ setVectImages(images); - initializeEnvironment(); + initializeEnvironment(datadir); } KernelManagerContour::~KernelManagerContour(){ -} +} std::vector KernelManagerContour::getVectImages(){ return vectimages; } void KernelManagerContour::setVectImages(std::vector vectimg){ - for(int i = 0; i < vectimg.size(); i++){ + for(int i = 0; i < (int)(vectimg.size()); i++){ vtkImageData* img = vectimg[i]; vtkImageChangeInformation* change = vtkImageChangeInformation::New(); change->SetInformationInput(img); change->SetInputConnection(img->GetProducerPort()); - change->SetOutputSpacing(0.6,0.6,0.6); + change->SetOutputSpacing(1,1,1); change->Update(); @@ -77,9 +92,9 @@ void KernelManagerContour::setVectImages(std::vector vectimg){ vectimages = vectimg; } -void KernelManagerContour::initializeEnvironment(){ - std::string conceptsFN = "data/holaConceptsFile.cf"; - std::string imageSourcesFN = "data/holaImagesInstantsFile.of"; +void KernelManagerContour::initializeEnvironment(std::string datadir){ + std::string conceptsFN = datadir+"holaConceptsFile.cf"; + std::string imageSourcesFN = datadir+"holaImagesInstantsFile.of"; std::string imageSectionsFN = ""; std::string axeThingsFN = ""; @@ -88,7 +103,7 @@ void KernelManagerContour::initializeEnvironment(){ std::map* axesMap = new std::map(); std::map* outlinesMap = new std::map(); - for(int i = 0; i < vectimages.size(); i++){ + for(int i = 0; i < (int)(vectimages.size()); i++){ vtkImageData* selectedimage = vectimages[i]; ImageSourceThing * thing = new ImageSourceThing(selectedimage); std::string imgstring = "Source Image "+intToString(i+1); @@ -96,7 +111,7 @@ void KernelManagerContour::initializeEnvironment(){ } - OutlineModelBuilder * _builder = new OutlineModelBuilder( conceptsFN ); + OutlineModelBuilder * _builder = new OutlineModelBuilder( conceptsFN ,datadir); _builder->buildImageSource_Envornment( imageSourcesFN, sourcesMap ); _builder->buildImageSection_Envornment( imageSectionsFN, sectionsMap ); _builder->buildAxe_Envornment(axeThingsFN, axesMap ); @@ -188,7 +203,8 @@ void KernelManagerContour::setInstant(std::vector vectInstant){ modelManager->setInstant(act); } -std::string KernelManagerContour::createCopyContourOf ( std::string anExistingKName, std::vector &instantNoTouchData){ +std::string KernelManagerContour::createCopyContourOf ( std::string anExistingKName, std::vector &instantNoTouchData) +{ return modelManager->createCopyContourOf(anExistingKName, instantNoTouchData); } manualContourModel* KernelManagerContour::getOutlineByKeyName(std::string cloneName){ @@ -327,7 +343,7 @@ manualContourModel* KernelManagerContour::GetPoints(int z,int type, std::vector< for (int j=0 ; jAddPoint( (*vecCtrlPointX)[j] , (*vecCtrlPointY)[j] , -900 ); + manModelContour->AddPoint( (*vecCtrlPointX)[j] , (*vecCtrlPointY)[j] , 900 ); //-------------------------------------------------------------------- } // for j @@ -340,7 +356,6 @@ manualContourModel* KernelManagerContour::GetPoints(int z,int type, std::vector< }// ifSliceKeyContourExist return manModelContour; - } manualContourModel * KernelManagerContour::factoryManualContourModel(int typeContour) @@ -371,6 +386,12 @@ manualContourModel * KernelManagerContour::factoryManualContourModel(int typeCon manModelContour = new manualContourModelCircle(); } + // line + if (typeContour==6) + { + manModelContour = new manualContourModelLine(); + } + return manModelContour; } @@ -378,7 +399,7 @@ std::vector KernelManagerContour::getOutlinesNameAtInstant(std::vec Instant instant(&tempvector); std::vector vectcont = modelManager->getOutlinesAtInstant( &instant ); std::vector vectname; - for(int i = 0; i < vectcont.size(); i++){ + for(int i = 0; i < (int)(vectcont.size()); i++){ ContourThing **contourthing = vectcont[i]; vectname.push_back((*contourthing)->getName()); } @@ -414,7 +435,7 @@ void KernelManagerContour::getConceptsInformation(std::vector& conc vtkImageData* KernelManagerContour::getImageAtInstant(std::vector inst){ int index = inst[5]-1; - if(index < vectimages.size()&&index!=_currentIndex){ + if(index < (int)(vectimages.size())&&index!=_currentIndex){ _currentIndex=index; return vectimages[index]; } @@ -427,4 +448,6 @@ std::string KernelManagerContour::getCurrentFileName(){ void KernelManagerContour::setCurrentFileName(std::string filenam){ this->filename = filenam; -} \ No newline at end of file +} + +