]> Creatis software - bbtk.git/blobdiff - packages/itk/src/bbitkImageProperties.cxx
Interpolate On/Off has now immediate effect
[bbtk.git] / packages / itk / src / bbitkImageProperties.cxx
index 5d54e743dec3eb24b9a5a24e26600f0581f45231..4acf845f0f04b459068ec8b8837c4a4cf696983c 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbitkImageProperties.cxx,v $
   Language:  C++
-  Date:      $Date: 2008/10/17 08:18:21 $
-  Version:   $Revision: 1.6 $
+  Date:      $Date: 2009/07/23 12:27:35 $
+  Version:   $Revision: 1.9 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -45,7 +45,20 @@ namespace bbitk
 
   BBTK_ADD_BLACK_BOX_TO_PACKAGE(itk,ImageProperties);
 
-
+       //-----------------------------------------------------------------     
+       void ImageProperties::bbUserSetDefaultValues()
+       {
+       }
+       
+       //-----------------------------------------------------------------     
+       void ImageProperties::bbUserInitializeProcessing()
+       {
+       }
+       
+       //-----------------------------------------------------------------     
+       void ImageProperties::bbUserFinalizeProcessing()
+       {
+       }
 
 
   void ImageProperties::DoIt()
@@ -66,7 +79,7 @@ namespace bbitk
                        <<">()"<<std::endl);
 
 
-       itkImageType* im = bbGetInputIn().get<itkImageType*>();
+    itkImageType* im = bbGetInputIn().get<itkImageType*>();
     unsigned int dim = im->GetImageDimension();
 
     bbSetOutputTypeName(bbtk::TypeName<typename itkImageType::PixelType>());
@@ -76,17 +89,30 @@ namespace bbitk
 
     const typename itkImageType::IndexType& ind = r.GetIndex();
     std::vector<int> vind;
-    for (unsigned int i=0;i<dim;++i) vind.push_back(ind[i]);
+    for (unsigned int i=0;i<dim;++i) 
+       vind.push_back(ind[i]);
     bbSetOutputIndex(vind);
 
     const typename itkImageType::SizeType& sz = r.GetSize();
     std::vector<int> vsz;
-    for (unsigned int i=0;i<dim;++i) vsz.push_back(sz[i]);
+    for (unsigned int i=0;i<dim;++i) 
+       vsz.push_back(sz[i]);
+    
+    // brute hack to avoid failure of most black boxes that expects 3D images. // JPR
+    if (dim<3) 
+       vsz.push_back(1);
+    
     bbSetOutputSize(vsz);
 
     typename itkImageType::SpacingType sp = im->GetSpacing();
     std::vector<float> vsp;
-    for (unsigned int i=0;i<dim;++i) vsp.push_back(sp[i]);
+    for (unsigned int i=0;i<dim;++i) 
+       vsp.push_back(sp[i]);
+       
+    // brute hack to avoid failure of most black boxes that expects 3D images. // JPR
+    if (dim<3) 
+       vsp.push_back(1);    
+     
     bbSetOutputSpacing(vsp);
 
     bbtkDebugDecTab("Core",9);
@@ -94,9 +120,6 @@ namespace bbitk
 
 
 
-
-
-
 }
 // eo namespace bbtk