#ifndef __FPA__IMAGE__FUNCTORS__GRADIENTIMAGEFUNCTIONBASE__HXX__ #define __FPA__IMAGE__FUNCTORS__GRADIENTIMAGEFUNCTIONBASE__HXX__ // ------------------------------------------------------------------------- template< class _TGradient > void fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: Prepare( ) const { } // ------------------------------------------------------------------------- template< class _TGradient > typename fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: TOutput fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: Evaluate( const TPoint& p ) const { TIndex i; this->GetInputImage( )->TransformPhysicalPointToIndex( p, i ); return( this->EvaluateAtIndex( i ) ); } // ------------------------------------------------------------------------- template< class _TGradient > typename fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: TOutput fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: EvaluateAtIndex( const TIndex& i ) const { return( this->_Evaluate( i ) ); } // ------------------------------------------------------------------------- template< class _TGradient > typename fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: TOutput fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: EvaluateAtContinuousIndex( const TContIndex& i ) const { TPoint p; this->GetInputImage( )->TransformContinuousIndexToPhysicalPoint( i, p ); return( this->Evaluate( p ) ); } // ------------------------------------------------------------------------- template< class _TGradient > fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: GradientImageFunctionBase( ) : Superclass( ) { } // ------------------------------------------------------------------------- template< class _TGradient > fpa::Image::Functors::GradientImageFunctionBase< _TGradient >:: ~GradientImageFunctionBase( ) { } #endif // __FPA__IMAGE__FUNCTORS__GRADIENTIMAGEFUNCTIONBASE__HXX__ // eof - $RCSfile$