38 #include <visp3/core/vpColVector.h>
39 #include <visp3/core/vpHomogeneousMatrix.h>
41 #include <visp3/ustk_core/usPolynomialCurve3D.h>
62 int getNbSegments()
const;
63 double getParametricLength()
const;
64 double getLength(
int nbSubSeg = 50)
const;
71 void removeLastSegment();
72 void removeSegment(
int i);
73 void removeSegments(
int i,
int j);
76 void defineFromPoints(
const std::vector<vpColVector> &points,
const std::vector<double> &lengths,
int order = 3);
86 bool move(
const vpHomogeneousMatrix &H);
87 bool move(
double x,
double y,
double z,
double tx,
double ty,
double tz);
93 vpColVector getPoint(
double param)
const;
94 vpColVector getTangent(
double param)
const;
95 double getDistanceFromPoint(
const vpColVector &point,
double start = 0,
double stop = -1,
96 double threshold = 1e-5)
const;
97 bool getParametersFromLength(
double l,
int &index,
double ¶m)
const;
101 double getCurvatureFromShape(
double start,
double end, vpColVector ¢er3D, vpColVector &direction3D)
const;
106 friend VISP_EXPORT std::ostream &operator<<(std::ostream &s,
const usBSpline3D &spline);
107 friend VISP_EXPORT std::istream &operator>>(std::istream &s,
usBSpline3D &spline);
109 friend VISP_EXPORT std::ostream &operator<<=(std::ostream &s,
const usBSpline3D &spline);
110 friend VISP_EXPORT std::istream &operator>>=(std::istream &s,
usBSpline3D &spline);
113 VISP_EXPORT std::ostream &operator<<(std::ostream &s,
const usBSpline3D &spline);
114 VISP_EXPORT std::istream &operator>>(std::istream &s,
usBSpline3D &spline);
116 VISP_EXPORT std::ostream &operator<<=(std::ostream &s,
const usBSpline3D &spline);
117 VISP_EXPORT std::istream &operator>>=(std::istream &s,
usBSpline3D &spline);
std::vector< usPolynomialCurve3D > m_spline
Polynomials container.