X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbcreaImageIOItkImagesChooserDialogBox.cxx;h=2d9074973262fb6015f58e07eac71ddaa57c3634;hb=cc87ce2c00fc2ec3cc2fefc4375b53f7e16ff6fa;hp=1f4d1e657bfeb33419adb3b395690a717b9117f7;hpb=69b17c9a4db1eacaf9e8ddad61154e32bd8cee21;p=creaImageIO.git diff --git a/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx b/bbtk/src/bbcreaImageIOItkImagesChooserDialogBox.cxx index 1f4d1e6..2d90749 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 @@ -34,8 +35,8 @@ void ItkImagesChooserDialogBox::Export() else if (dlg->getImagesSelected().size() > 1) { OutputImagesITKType outVect; - typename std::vector< typename TImage::Pointer> tempImgs= dlg->getTemplatedImagesSelected(); // JPR typename typename - typename std::vector< typename TImage::Pointer>::iterator it = tempImgs.begin(); // JPR typename typename + std::vector tempImgs= dlg->getTemplatedImagesSelected(); + std::vector::iterator it = tempImgs.begin(); for(;it != tempImgs.end(); ++it) { outVect.push_back( (*it).GetPointer() ); @@ -56,6 +57,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) + { + std::vector tempImgs= dlg->getTemplatedImagesSelected(); + 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) //=====