X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=plugins%2FcpExtensions%2FPolyLineParametricPathWriter.cxx;fp=plugins%2FcpExtensions%2FPolyLineParametricPathWriter.cxx;h=400d3eb33761254bc27db56626820e568702c268;hb=9af34b55ea1d60eef3608aede00f9ef5a16dccdf;hp=7ee1be3d55140890801a3d17d4ed85765232817a;hpb=d976f28fd3120d75c30a521bb5987d25e78f72c2;p=cpPlugins.git diff --git a/plugins/cpExtensions/PolyLineParametricPathWriter.cxx b/plugins/cpExtensions/PolyLineParametricPathWriter.cxx index 7ee1be3..400d3eb 100644 --- a/plugins/cpExtensions/PolyLineParametricPathWriter.cxx +++ b/plugins/cpExtensions/PolyLineParametricPathWriter.cxx @@ -1,6 +1,8 @@ #include +#include #include +#include #include #include #include @@ -32,7 +34,8 @@ cpPluginscpExtensions::PolyLineParametricPathWriter:: PolyLineParametricPathWriter( ) : Superclass( ) { - this->_ConfigureInput< cpInstances::PolyLineParametricPath >( "Input", true, false ); + this->_ConfigureInput< cpInstances::DataObjects::PolyLineParametricPath >( "Input", true, false ); + this->_ConfigureInput< cpInstances::DataObjects::Image >( "Image", false, false ); this->m_Parameters.ConfigureAsSaveFileName( "FileName", "" ); this->m_Parameters.SetAcceptedFileExtensions( "FileName", @@ -60,11 +63,22 @@ template< class _TPolyLineParametricPath > void cpPluginscpExtensions::PolyLineParametricPathWriter:: _GD0( _TPolyLineParametricPath* skeleton ) { - typedef cpExtensions::Algorithms::PolyLineParametricPathWriter< _TPolyLineParametricPath > _TWriter; + auto o = this->GetInputData( "Image" ); + cpPlugins_Demangle_Image_ScalarPixels_2( o, _GD1, _TPolyLineParametricPath::PathDimension, skeleton ) + this->_GD1< itk::Image< unsigned char, _TPolyLineParametricPath::PathDimension >, _TPolyLineParametricPath >( NULL, skeleton ); +} + +// ------------------------------------------------------------------------- +template< class _TImage, class _TPolyLineParametricPath > +void cpPluginscpExtensions::PolyLineParametricPathWriter:: +_GD1( _TImage* image, _TPolyLineParametricPath* skeleton ) +{ + typedef cpExtensions::Algorithms::PolyLineParametricPathWriter< _TPolyLineParametricPath, _TImage > _TWriter; auto filter = this->_CreateITK< _TWriter >( ); filter->SetInput( skeleton ); filter->SetFileName( this->m_Parameters.GetSaveFileName( "FileName" ) ); + filter->SetImage( image ); try { filter->Update( );