X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=plugins%2FITKDistanceMapFilters%2FSignedMaurerDistanceMapImageFilter.cxx;fp=plugins%2FITKDistanceMapFilters%2FSignedMaurerDistanceMapImageFilter.cxx;h=0000000000000000000000000000000000000000;hb=2e142df11d6f312a2a2b5097b8da73571ed523e8;hp=b92b881918fffeb59f7de490a6b2ae383f4c0f1c;hpb=61b3659afe961ed248f30e26f9ca8f28fcfafddc;p=cpPlugins.git diff --git a/plugins/ITKDistanceMapFilters/SignedMaurerDistanceMapImageFilter.cxx b/plugins/ITKDistanceMapFilters/SignedMaurerDistanceMapImageFilter.cxx deleted file mode 100644 index b92b881..0000000 --- a/plugins/ITKDistanceMapFilters/SignedMaurerDistanceMapImageFilter.cxx +++ /dev/null @@ -1,82 +0,0 @@ -#include -#include - -#include - -// ------------------------------------------------------------------------- -cpPluginsITKDistanceMapFilters::SignedMaurerDistanceMapImageFilter:: -SignedMaurerDistanceMapImageFilter( ) - : Superclass( ) -{ - typedef cpInstances::DataObjects::Image _TImage; - - this->_ConfigureInput< _TImage >( "Input", true, false ); - this->_ConfigureOutput< _TImage >( "Output" ); - - this->m_Parameters.ConfigureAsReal( "BackgroundValue", 0 ); - this->m_Parameters.ConfigureAsBool( "InsideIsPositive", true ); - this->m_Parameters.ConfigureAsBool( "SquaredDistance", false ); - this->m_Parameters.ConfigureAsBool( "UseImageSpacing", true ); - - std::vector< std::string > choices; - choices.push_back( "float" ); - choices.push_back( "double" ); - this->m_Parameters.ConfigureAsChoices( "OutputResolution", choices ); -} - -// ------------------------------------------------------------------------- -cpPluginsITKDistanceMapFilters::SignedMaurerDistanceMapImageFilter:: -~SignedMaurerDistanceMapImageFilter( ) -{ -} - -// ------------------------------------------------------------------------- -void cpPluginsITKDistanceMapFilters::SignedMaurerDistanceMapImageFilter:: -_GenerateData( ) -{ - auto o = this->GetInputData( "Input" ); - cpPlugins_Demangle_Image_ScalarPixels_VisualDims_1( o, _GD0 ) - this->_Error( "Invalid input image dimension." ); -} - -// ------------------------------------------------------------------------- -template< class _TImage > -void cpPluginsITKDistanceMapFilters::SignedMaurerDistanceMapImageFilter:: -_GD0( _TImage* image ) -{ - std::string out_res = - this->m_Parameters.GetSelectedChoice( "OutputResolution" ); - if( out_res == "float" ) this->_GD1< _TImage, float >( image ); - if( out_res == "double" ) this->_GD1< _TImage, double >( image ); -} - -// ------------------------------------------------------------------------- -template< class _TImage, class _TScalar > -void cpPluginsITKDistanceMapFilters::SignedMaurerDistanceMapImageFilter:: -_GD1( _TImage* image ) -{ - typedef itk::Image< _TScalar, _TImage::ImageDimension > _TDMap; - typedef - itk::SignedMaurerDistanceMapImageFilter< _TImage, _TDMap > - _TFilter; - - // Get parameters - double bv = this->m_Parameters.GetReal( "BackgroundValue" ); - bool pi = this->m_Parameters.GetBool( "InsideIsPositive" ); - bool sd = this->m_Parameters.GetBool( "SquaredDistance" ); - bool us = this->m_Parameters.GetBool( "UseImageSpacing" ); - - // Configure filter - _TFilter* filter = this->_CreateITK< _TFilter >( ); - filter->SetInput( image ); - filter->SetBackgroundValue( ( typename _TImage::PixelType )( bv ) ); - filter->SetInsideIsPositive( pi ); - filter->SetSquaredDistance( sd ); - filter->SetUseImageSpacing( us ); - filter->Update( ); - - // Connect output - this->GetOutput( "Output" )->SetITK( filter->GetOutput( ) ); -} - -// eof - $RCSfile$