X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=plugins%2FImageThresholdFilters%2FImageToBoundingBoxFromThreshold.cxx;h=4b86d54fc8a80dcdcc67c9c9523e1adc8a4614d8;hb=9b11582dc5062474361432e46838c4e790c21f10;hp=52082a2b1b1b9952912c6efc41a57571107ee6db;hpb=9d315ac836e5fe246a8c987681085ee19898affc;p=cpPlugins.git diff --git a/plugins/ImageThresholdFilters/ImageToBoundingBoxFromThreshold.cxx b/plugins/ImageThresholdFilters/ImageToBoundingBoxFromThreshold.cxx index 52082a2..4b86d54 100644 --- a/plugins/ImageThresholdFilters/ImageToBoundingBoxFromThreshold.cxx +++ b/plugins/ImageThresholdFilters/ImageToBoundingBoxFromThreshold.cxx @@ -1,7 +1,9 @@ #include #include +#include #include +#include #include // ------------------------------------------------------------------------- @@ -15,11 +17,8 @@ ImageToBoundingBoxFromThreshold( ) this->_ConfigureInput< _TImage >( "Input", true, false ); this->_ConfigureOutput< _TBBox >( "Output" ); - this->m_Parameters.ConfigureAsReal( "LowerThreshold" ); - this->m_Parameters.ConfigureAsReal( "UpperThreshold" ); - - this->m_Parameters.SetReal( "LowerThreshold", 0 ); - this->m_Parameters.SetReal( "LowerThreshold", 0 ); + this->m_Parameters.ConfigureAsReal( "LowerThreshold", 0 ); + this->m_Parameters.ConfigureAsReal( "UpperThreshold", 0 ); } // ------------------------------------------------------------------------- @@ -32,11 +31,9 @@ cpPluginsImageThresholdFilters::ImageToBoundingBoxFromThreshold:: void cpPluginsImageThresholdFilters::ImageToBoundingBoxFromThreshold:: _GenerateData( ) { - /* TODO - auto o = this->GetInputData( "Input" ); - cpPlugins_Demangle_ImageScalars_Dims( o, _GD0 ); - else this->_Error( "Invalid input image." ); - */ + auto o = this->GetInputData( "Input" ); + cpPlugins_Demangle_Image_ScalarPixels_AllDims_1( o, _GD0 ) + this->_Error( "Invalid input image." ); } // ------------------------------------------------------------------------- @@ -44,27 +41,25 @@ template< class _TImage > void cpPluginsImageThresholdFilters::ImageToBoundingBoxFromThreshold:: _GD0( _TImage* image ) { - /* TODO - typedef - cpExtensions::Algorithms::ImageToBoundingBoxFromThreshold< _TImage > - _TFilter; + typedef + cpExtensions::Algorithms::ImageToBoundingBoxFromThreshold< _TImage > + _TFilter; - // Configure filter - _TFilter* filter = this->_CreateITK< _TFilter >( ); - filter->SetImage( image ); - filter->SetLowerThreshold( this->m_Parameters.GetReal( "LowerThreshold" ) ); - filter->SetUpperThreshold( this->m_Parameters.GetReal( "UpperThreshold" ) ); - filter->Compute( ); + // Configure filter + _TFilter* filter = this->_CreateITK< _TFilter >( ); + filter->SetImage( image ); + 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" ); - typename _TImage::PointType p0, p1; - image->TransformIndexToPhysicalPoint( reg.GetIndex( ), p0 ); - image->TransformIndexToPhysicalPoint( reg.GetIndex( ) + reg.GetSize( ), p1 ); - bb->SetMinimum( p0 ); - bb->SetMaximum( p1 ); - */ + // Create output + auto reg = filter->GetRegion( ); + auto bb = this->GetOutput< cpPlugins::DataObjects::BoundingBox >( "Output" ); + typename _TImage::PointType p0, p1; + image->TransformIndexToPhysicalPoint( reg.GetIndex( ), p0 ); + image->TransformIndexToPhysicalPoint( reg.GetIndex( ) + reg.GetSize( ), p1 ); + bb->SetMinimum( p0 ); + bb->SetMaximum( p1 ); } // eof - $RCSfile$