X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FPlugins%2FBasicFilters%2FExtractSliceImageFilter.cxx;fp=lib%2FcpPlugins%2FPlugins%2FBasicFilters%2FExtractSliceImageFilter.cxx;h=0000000000000000000000000000000000000000;hb=98390bcac544f7f3a6762ce812dda491213d6f13;hp=a700a01cef465a78bb3b59d259788085d4612f33;hpb=b6c7e73ebcce23619daced67f85d9e1364b33f30;p=cpPlugins.git diff --git a/lib/cpPlugins/Plugins/BasicFilters/ExtractSliceImageFilter.cxx b/lib/cpPlugins/Plugins/BasicFilters/ExtractSliceImageFilter.cxx deleted file mode 100644 index a700a01..0000000 --- a/lib/cpPlugins/Plugins/BasicFilters/ExtractSliceImageFilter.cxx +++ /dev/null @@ -1,84 +0,0 @@ -#include "ExtractSliceImageFilter.h" -#include - -#include - -// ------------------------------------------------------------------------- -cpPlugins::BasicFilters::ExtractSliceImageFilter:: -ExtractSliceImageFilter( ) - : Superclass( ) -{ - this->_AddInput( "Input" ); - this->_AddOutput< cpPlugins::Interface::Image >( "Output" ); - - this->m_Parameters->ConfigureAsUint( "Axis" ); - this->m_Parameters->ConfigureAsInt( "Slice" ); - - this->m_Parameters->SetUint( "Axis", 0 ); - this->m_Parameters->SetInt( "Slice", 0 ); -} - -// ------------------------------------------------------------------------- -cpPlugins::BasicFilters::ExtractSliceImageFilter:: -~ExtractSliceImageFilter( ) -{ -} - -// ------------------------------------------------------------------------- -std::string cpPlugins::BasicFilters::ExtractSliceImageFilter:: -_GenerateData( ) -{ - auto image = this->GetInputData( "Input" ); - itk::DataObject* itk_image = NULL; - std::string r = ""; -/* - cpPlugins_Image_Demangle_AllTypes( 3, image, itk_image, r, _GD0 ); - else cpPlugins_VectorImage_Demangle_AllTypes( 3, image, itk_image, r, _GD0 ); - else*/ r = "ExtractSliceImageFilter: Input image type not supported."; - return( r ); -} - -// ------------------------------------------------------------------------- -template< class I > -std::string cpPlugins::BasicFilters::ExtractSliceImageFilter:: -_GD0( itk::DataObject* image ) -{ - return( this->_RealGD< I, I >( image ) ); -} - -// ------------------------------------------------------------------------- -template< class I, class O > -inline std::string cpPlugins::BasicFilters::ExtractSliceImageFilter:: -_RealGD( itk::DataObject* image ) -{ - typedef itk::ExtractImageFilter< I, O > _F; - typedef typename O::PixelType _OP; - - // Get parameters - int axis = this->m_Parameters->GetUint( "Axis" ); - int slice = this->m_Parameters->GetInt( "Slice" ); - - // Compute region - I* img = dynamic_cast< I* >( image ); - typename I::RegionType region = img->GetRequestedRegion( ); - typename I::SizeType size = region.GetSize( ); - typename I::IndexType index = region.GetIndex( ); - size[ axis ] = 1; - index[ axis ] = slice; - region.SetSize( size ); - region.SetIndex( index ); - - // Configure filter - _F* filter = this->_CreateITK< _F >( ); - filter->SetInput( img ); - filter->SetExtractionRegion( region ); - filter->SetDirectionCollapseToIdentity( ); - filter->Update( ); - - // Connect output - auto out = this->GetOutputData( "Output" ); - out->SetITK( filter->GetOutput( ) ); - return( "" ); -} - -// eof - $RCSfile$