#include <itkPolyLineParametricPath.h>
#include <itkImageBase.h>
+#include <cpExtensions/Algorithms/BezierCurveFunction.h>
namespace cpExtensions
{
typedef typename TImageBase::DirectionType TDirection;
typedef typename Superclass::ContinuousIndexType TContinuousIndex;
+ typedef typename TPoint::VectorType TVector;
+ typedef cpExtensions::Algorithms::BezierCurveFunction< TVector > TBezier;
+
public:
itkNewMacro( Self );
itkTypeMacro( PolyLineParametricPath, itk::PolyLineParametricPath );
itkSetMacro( Origin, TPoint );
public:
+ void AddVertex( const TContinuousIndex& vertex );
unsigned long GetSize( ) const;
TContinuousIndex GetVertex( unsigned long i ) const;
TPoint GetPoint( unsigned long i ) const;
+ TPoint GetSmoothPoint( double u ) const;
virtual void SetSpacing( const TSpacing& spac );
virtual void SetSpacing( const double spac[ _VDim ] );
Self& operator=( const Self& other );
protected:
+ typename TBezier::Pointer m_Bezier;
+
TSpacing m_Spacing;
TPoint m_Origin;
TDirection m_Direction;