X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbcreaImageIOItkImagesChooserDialogBox.cxx;h=66f810ac388c742f1f5d828f80daddc18ab27c38;hb=c7bbeea5328158023e6df42b77d3479b69148faf;hp=2d466515a29406b57e089245a5ca17b0a44b414e;hpb=a13d364535da892bef280e605549562f05e52d4e;p=creaImageIO.git diff --git a/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx b/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx index 2d46651..66f810a 100644 --- a/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx +++ b/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx @@ -21,7 +21,8 @@ void ItkImagesChooserDialogBox::Process() bbtk::TypeInfo typ = bbitk::GetITKImagePtrTypeInfoFromPixelTypeInfoAndDimension(*dlg->getTypes().front(), dlg->getDims().front()); BBTK_TEMPLATE_ITK_IMAGE_SWITCH(typ, Export); - bbSetOutputOutVImages(dlg->getVtkImagesSelected()); + BBTK_TEMPLATE_ITK_IMAGE_SWITCH(typ, ExportVTK); + delete dlg; } template @@ -33,14 +34,15 @@ void ItkImagesChooserDialogBox::Export() } else if (dlg->getImagesSelected().size() > 1) { - OutputImagesITKType temp; - //std::vector temp; - std::vector::iterator it = dlg->getTemplatedImagesSelected().begin(); - for(;it != dlg->getTemplatedImagesSelected().end(); ++it) + OutputImagesITKType outVect; + + typename std::vector tempImgs= dlg->getTemplatedImagesSelected(); + typename std::vector::iterator it = tempImgs.begin(); + for(;it != tempImgs.end(); ++it) { - temp.push_back( (*it).GetPointer() ); + outVect.push_back( (*it).GetPointer() ); } - bbSetOutputOutIImages( temp); + bbSetOutputOutIImages( outVect); } else { @@ -56,6 +58,33 @@ void ItkImagesChooserDialogBox::Export() //reader->GetOutput()->Register(); // this->bbSetOutputOut(reader->GetOutput()); } +template +void ItkImagesChooserDialogBox::ExportVTK() +{ + // BBTK can support only a vector with same dimensions image. + if (dlg->getDims().front() < 4) + { + typename std::vector tempImgs= dlg->getTemplatedImagesSelected(); + typename std::vector::iterator it = tempImgs.begin(); + for(;it != tempImgs.end(); ++it) + { + dlg->split3Din3Dvtk( (*it) ); + } + bbSetOutputOutVImages( dlg->getVtkImagesSelected() ); + } + else if (dlg->getDims().front() == 4) + { + // To Test + // dlg->split4Din3Dvtk("d:/temp2"); + // bbSetOutputOutVImages( dlg->getVtkImagesSelected()); + } + else + { + // NOT IMPLEMENTED YET FOR DIMENSIONS > 4 + + } + +} //===== // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) //=====