X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FImage%2FRandomWalker.hxx;h=acaa60ab8118e40510e6e509d9b97b63ec617ac6;hb=fe01e92d9bce3519fa2a0936b6180ca7b057a87a;hp=9016e970e987d4a253deb5fd36caf7e1db335914;hpb=c4efafee513539e9a58c4a8b8369450ada1df5d8;p=FrontAlgorithms.git diff --git a/lib/fpa/Image/RandomWalker.hxx b/lib/fpa/Image/RandomWalker.hxx index 9016e97..acaa60a 100644 --- a/lib/fpa/Image/RandomWalker.hxx +++ b/lib/fpa/Image/RandomWalker.hxx @@ -61,8 +61,9 @@ _BeforeGenerateData( ) // ------------------------------------------------------------------------- template< class _TInputImage, class _TLabelImage, class _TScalar > -void fpa::Image::RandomWalker< _TInputImage, _TLabelImage, _TScalar >:: -_QueueInit( ) +typename fpa::Image::RandomWalker< _TInputImage, _TLabelImage, _TScalar >:: +TNodes fpa::Image::RandomWalker< _TInputImage, _TLabelImage, _TScalar >:: +_UnifySeeds( ) { this->m_Seeds.clear( ); const TLabelImage* lbl = this->GetLabels( ); @@ -98,25 +99,31 @@ _QueueInit( ) } // rof - typename TSeedsInterface::TNode node; - node.Vertex = lIt.GetIndex( ); - node.Parent = lIt.GetIndex( ); - node.FrontId = lIt.Get( ); - node.Value = TScalar( 0 ); if( !is_seed ) { - this->_Mark( lIt.GetIndex( ), lIt.Get( ) ); + typename TSeedsInterface::TNode node; + node.Vertex = lIt.GetIndex( ); + node.Parent = lIt.GetIndex( ); + node.FrontId = lIt.Get( ); + node.Value = TScalar( 0 ); + this->_Mark( node.Vertex, node.FrontId ); this->_UpdateOutputValue( node ); } else - this->m_Seeds.insert( node ); + { + typename TSeedsInterface::TSeed seed; + seed.Vertex = lIt.GetIndex( ); + seed.IsPoint = false; + this->m_Seeds.push_back( seed ); + + } // fi } // fi } // rof // Ok, finish initialization - this->Superclass::_QueueInit( ); + return( this->Superclass::_UnifySeeds( ) ); } #endif // __fpa__Image__RandomWalker__hxx__