Program: bbtk
Module: $RCSfile: bbitkImageProperties.cxx,v $
Language: C++
- Date: $Date: 2008/10/17 08:18:21 $
- Version: $Revision: 1.6 $
+ Date: $Date: 2010/09/21 06:43:17 $
+ Version: $Revision: 1.12 $
=========================================================================*/
/* ---------------------------------------------------------------------
#include "bbitkImageProperties.h"
#include "bbitkPackage.h"
-
-
namespace bbitk
{
BBTK_BLACK_BOX_IMPLEMENTATION(ImageProperties,bbtk::AtomicBlackBox);
BBTK_ADD_BLACK_BOX_TO_PACKAGE(itk,ImageProperties);
+ //-----------------------------------------------------------------
+ void ImageProperties::bbUserSetDefaultValues()
+ {
+ }
+ //-----------------------------------------------------------------
+ void ImageProperties::bbUserInitializeProcessing()
+ {
+ }
+ //-----------------------------------------------------------------
+ void ImageProperties::bbUserFinalizeProcessing()
+ {
+ }
void ImageProperties::DoIt()
{
BBTK_TEMPLATE_ITK_IMAGE_SWITCH(bbGetInputIn().type(),DoIt);
}
-
-
/**
Template Processing
*/
<<bbtk::TypeName<itkImageType>()
<<">()"<<std::endl);
-
- itkImageType* im = bbGetInputIn().get<itkImageType*>();
+ itkImageType* im = bbGetInputIn().get<itkImageType*>();
unsigned int dim = im->GetImageDimension();
bbSetOutputTypeName(bbtk::TypeName<typename itkImageType::PixelType>());
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==2)
+ 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==2)
+ vsp.push_back(1.0);
+
bbSetOutputSpacing(vsp);
bbtkDebugDecTab("Core",9);
}
-
-
-
-
-
-
}
// eo namespace bbtk