X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=plugins%2FIO%2FImageJSkeletonWriter.cxx;fp=plugins%2FIO%2FImageJSkeletonWriter.cxx;h=0000000000000000000000000000000000000000;hb=2e142df11d6f312a2a2b5097b8da73571ed523e8;hp=482000f31c9be1192535bc2cd4709914a5d207b4;hpb=61b3659afe961ed248f30e26f9ca8f28fcfafddc;p=cpPlugins.git diff --git a/plugins/IO/ImageJSkeletonWriter.cxx b/plugins/IO/ImageJSkeletonWriter.cxx deleted file mode 100644 index 482000f..0000000 --- a/plugins/IO/ImageJSkeletonWriter.cxx +++ /dev/null @@ -1,104 +0,0 @@ -#include -#include - -#include -#include -#include - -#ifdef cpPlugins_QT4 -# include -#endif // cpPlugins_QT4 - -// ------------------------------------------------------------------------- -QDialog* cpPluginsIO::ImageJSkeletonWriter:: -CreateQDialog( ) -{ -#ifdef cpPlugins_QT4 - cpPlugins::QT::SaveFileDialog* dlg = NULL; - if( QApplication::instance( ) != NULL ) - { - dlg = new cpPlugins::QT::SaveFileDialog( ); - dlg->SetParameters( &( this->m_Parameters ), "FileName" ); - - } // fi - return( dlg ); -#else // cpPlugins_QT4 - return( NULL ); -#endif // cpPlugins_QT4 -} - -// ------------------------------------------------------------------------- -cpPluginsIO::ImageJSkeletonWriter:: -ImageJSkeletonWriter( ) - : Superclass( ) -{ - typedef cpPluginsExtensions::Skeleton _TSkeleton; - this->_ConfigureInput< _TSkeleton >( "Input", true, false ); - - this->m_Parameters.ConfigureAsSaveFileName( "FileName", "" ); - this->m_Parameters.SetAcceptedFileExtensions( - "FileName", - "ImageJ files (*.txt)" - ); -} - -// ------------------------------------------------------------------------- -cpPluginsIO::ImageJSkeletonWriter:: -~ImageJSkeletonWriter( ) -{ -} - -// ------------------------------------------------------------------------- -void cpPluginsIO::ImageJSkeletonWriter:: -_GenerateData( ) -{ - auto o = this->GetInputData( "Input" ); - cpPlugins_Demangle_Skeleton_All_1( o, _GD0 ) - this->_Error( "Invalid input skeleton type." ); -} - -// ------------------------------------------------------------------------- -template< class _TSkeleton > -void cpPluginsIO::ImageJSkeletonWriter:: -_GD0( _TSkeleton* skeleton ) -{ - std::stringstream data; - unsigned long id = 1; - - auto mIt = skeleton->BeginEdgesRows( ); - for( ; mIt != skeleton->EndEdgesRows( ); ++mIt ) - { - auto rIt = mIt->second.begin( ); - for( ; rIt != mIt->second.end( ); ++rIt ) - { - auto eIt = rIt->second.begin( ); - for( ; eIt != rIt->second.end( ); ++eIt ) - { - auto path = *eIt; - auto p0 = path->GetSmoothPoint( 0 ); - auto p1 = path->GetSmoothPoint( 1 ); - double length = p1.EuclideanDistanceTo( p0 ); - data - << id << "\t1\t" << length << "\t" - << p0[ 0 ] << "\t" << p0[ 1 ] << "\t"<< p0[ 2 ] << "\t" - << p1[ 0 ] << "\t" << p1[ 1 ] << "\t"<< p1[ 2 ] << "\t" - << p1.EuclideanDistanceTo( p0 ) << std::endl; - id++; - - } // rof - - } // rof - - } // rof - - if( - !( - cpExtensions::Write( - data.str( ), this->m_Parameters.GetSaveFileName( "FileName" ) - ) - ) - ) - this->_Error( "Could not write on ImageJ file." ); -} - -// eof - $RCSfile$