-#include <plugins/ImageThresholdFilters/ImageToBoundingBoxFromThreshold.h>
-#include <cpPlugins/DataObjects/Image.h>
-#include <cpPlugins/DataObjects/BoundingBox.h>
+#include <ImageThresholdFilters/ImageToBoundingBoxFromThreshold.h>
+#include <cpInstances/Image.h>
+#include <cpInstances/BoundingBox.h>
+#include <itkImage.h>
#include <cpExtensions/Algorithms/ImageToBoundingBoxFromThreshold.h>
-#include <cpExtensions/Algorithms/ImageToBoundingBoxFromThreshold.hxx>
// -------------------------------------------------------------------------
cpPluginsImageThresholdFilters::ImageToBoundingBoxFromThreshold::
ImageToBoundingBoxFromThreshold( )
: Superclass( )
{
- this->_ConfigureInput< cpPlugins::DataObjects::Image >( "Input", true, false );
- this->_ConfigureOutput< cpPlugins::DataObjects::BoundingBox >( "Output" );
+ typedef cpInstances::Image _TImage;
+ typedef cpInstances::BoundingBox _TBBox;
- this->m_Parameters.ConfigureAsReal( "LowerThreshold" );
- this->m_Parameters.ConfigureAsReal( "UpperThreshold" );
+ this->_ConfigureInput< _TImage >( "Input", true, false );
+ this->_ConfigureOutput< _TBBox >( "Output" );
- this->m_Parameters.SetReal( "LowerThreshold", 0 );
- this->m_Parameters.SetReal( "LowerThreshold", 0 );
+ this->m_Parameters.ConfigureAsUint( "PAD", 0 );
+ this->m_Parameters.ConfigureAsReal( "LowerThreshold", 0 );
+ this->m_Parameters.ConfigureAsReal( "UpperThreshold", 0 );
}
// -------------------------------------------------------------------------
_GenerateData( )
{
auto o = this->GetInputData( "Input" );
- cpPlugins_Demangle_ImageScalars_Dims( o, _GD0 );
- else this->_Error( "Invalid input image." );
+ cpPlugins_Demangle_Image_ScalarPixels_AllDims_1( o, _GD0 )
+ this->_Error( "Invalid input image." );
}
// -------------------------------------------------------------------------
// Configure filter
_TFilter* filter = this->_CreateITK< _TFilter >( );
filter->SetImage( image );
+ filter->SetPAD( this->m_Parameters.GetUint( "PAD" ) );
filter->SetLowerThreshold( this->m_Parameters.GetReal( "LowerThreshold" ) );
filter->SetUpperThreshold( this->m_Parameters.GetReal( "UpperThreshold" ) );
filter->Compute( );
// Create output
auto reg = filter->GetRegion( );
- auto bb = this->GetOutput< cpPlugins::DataObjects::BoundingBox >( "Output" );
+ auto bb = this->GetOutput< cpInstances::BoundingBox >( "Output" );
typename _TImage::PointType p0, p1;
image->TransformIndexToPhysicalPoint( reg.GetIndex( ), p0 );
image->TransformIndexToPhysicalPoint( reg.GetIndex( ) + reg.GetSize( ), p1 );