36 #ifndef __CU_CUBIC_SPLINE_APPROXIMATOR_H__
37 #define __CU_CUBIC_SPLINE_APPROXIMATOR_H__
39 #include "../CUPoly2.h"
40 #include "../CUCubicSpline.h"
41 #include "../CUVec2.h"
45 #define DEFAULT_TOLERANCE 0.25
76 std::vector<Vec2> _pointbuff;
78 std::vector<float> _parambuff;
120 #pragma mark Constructors
140 #pragma mark Initialization
162 _pointbuff.clear(); _parambuff.clear();
174 _pointbuff.
clear(); _parambuff.clear();
179 #pragma mark Calculation
198 void calculate(
Criterion criterion=Criterion::DISTANCE,
float tolerance=DEFAULT_TOLERANCE);
202 #pragma mark Materialization
536 #pragma mark Internal Data Generation
554 int generate(
const std::vector<Vec2>& src,
int soff,
float tp,
555 float tolerance,
Criterion criterion,
int depth);
563 const std::vector<Vec2>* getActivePoints()
const {
564 return (_calculated ? &_pointbuff : (_spline ? &(_spline->_points) :
nullptr));
572 bool isClosed()
const {
573 return (_calculated ? _closed : (_spline ? _spline->_closed :
false));
CubicSplineApproximator()
Definition: CUCubicSplineApproximator.h:124
Definition: CUPoly2.h:115
std::vector< float > getParameters() const
std::vector< Vec2 > getTangents() const
void clear()
Definition: CUCubicSpline.h:540
Definition: CUCubicSplineApproximator.h:100
std::vector< Vec2 > getNormals() const
Poly2 getHandles(float radius, int segments=4) const
CubicSplineApproximator(const CubicSpline *spline)
Definition: CUCubicSplineApproximator.h:131
void set(const CubicSpline *spline)
Definition: CUCubicSplineApproximator.h:149
Criterion
Definition: CUCubicSplineApproximator.h:93
Definition: CUCubicSpline.h:88
Poly2 getAnchors(float radius, int segments=4) const
CubicSpline getRefinement() const
~CubicSplineApproximator()
void clear()
Definition: CUCubicSplineApproximator.h:171
void reset()
Definition: CUCubicSplineApproximator.h:160
Definition: CUCubicSplineApproximator.h:116
Definition: CUAnimationNode.h:52
Definition: CUCubicSplineApproximator.h:108
void calculate(Criterion criterion=Criterion::DISTANCE, float tolerance=DEFAULT_TOLERANCE)
Definition: CUCubicSplineApproximator.h:70