X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FImage%2FSkeletonFilter.h;h=0fbb3d5ade737d233e150e986aa67bc792f16a73;hb=e9083d9f5f381f258f994fa9bbbe39a897f97c5b;hp=5a2563444877ccdbf09cddf5aedef50b3a509db2;hpb=7955ba9683b8032e8cd3ca7aa361568fdbb218d2;p=FrontAlgorithms.git diff --git a/lib/fpa/Image/SkeletonFilter.h b/lib/fpa/Image/SkeletonFilter.h index 5a25634..0fbb3d5 100644 --- a/lib/fpa/Image/SkeletonFilter.h +++ b/lib/fpa/Image/SkeletonFilter.h @@ -1,6 +1,7 @@ #ifndef __fpa__Image__SkeletonFilter__h__ #define __fpa__Image__SkeletonFilter__h__ +#include #include #include #include @@ -35,6 +36,7 @@ namespace fpa protected: typedef typename Superclass::_TQueueNode _TQueueNode; typedef std::multimap< double, TIndex, std::greater< double > > _TSkeletonQueue; + typedef std::map< TIndex, TIndex, typename TIndex::LexicographicCompare > _TAdjacencies; public: itkNewMacro( Self ); @@ -48,12 +50,13 @@ namespace fpa SkeletonFilter( ); virtual ~SkeletonFilter( ); - virtual void _BeforeGenerateData( ) fpa_OVERRIDE; - virtual void _UpdateResult( const _TQueueNode& n ) fpa_OVERRIDE; - virtual void _AfterGenerateData( ) fpa_OVERRIDE; + virtual void _BeforeGenerateData( ) override; + virtual void _UpdateResult( const _TQueueNode& n ) override; + virtual void _AfterGenerateData( ) override; - void _EndPoints( std::vector< TIndex >& end_points ); - void _Skeleton( const std::vector< TIndex >& end_points ); + void _EndPoints( std::vector< TIndex >& end_points, _TAdjacencies& A ); + void _Skeleton( const std::vector< TIndex >& end_points, _TAdjacencies& A ); + void _MarkSphere( const TIndex& idx ); private: // Purposely not defined