MeVisLab Toolbox Reference
ml::CSOGeneratePathPoints Namespace Reference

The CSOGeneratePathPoints namespace offers interpolation methods (computing path points between seed points) as a linear interpolation, a spline interpolation and a spline approximation. More...

Functions

MLCSO_EXPORT void fillAllPathPointsLinear (CSO *cso, double pointDistanceInMM=1)
 Fills all CSOPathPoints of the given CSO by a linear interpolation method. More...
 
MLCSO_EXPORT void fillAllPathPointsSpline (CSO *cso, double pointDistanceInMM=1, int splineMode=0)
 Fills all CSOPathPoints of the given CSO by a spline method splineMode. More...
 
MLCSO_EXPORT void fillAllPathPointsSplineInterpolation (CSO *cso, double pointDistanceInMM=1)
 Fills all CSOPathPoints of the given CSO by a spline interpolation method. More...
 
MLCSO_EXPORT void fillAllPathPointsSplineApproximation (CSO *cso, double pointDistanceInMM=1)
 Fills all CSOPathPoints of the given CSO by a spline approximation method. More...
 
MLCSO_EXPORT void fillAllPathPointsWithSeedPoints (CSO *cso)
 Fills all CSOPathPoints of the given CSO by setting each seed point as a path point. More...
 
MLCSO_EXPORT void smoothPointsSplineApproximation (const std::vector< Vector3 > &inputPoints, std::vector< Vector3 > &outputPoints)
 Smooths the given positions by a spline approximation. More...
 
MLCSO_EXPORT void smoothPointsSplineInterpolation (const std::vector< Vector3 > &inputPoints, std::vector< Vector3 > &outputPoints)
 Smooths the given positions by a spline interpolation. More...
 
MLCSO_EXPORT void smoothPointsSpline (const std::vector< Vector3 > &inputPoints, std::vector< Vector3 > &outputPoints, SplineModes splineMode)
 Smooths the given positions by a spline interpolation. More...
 
MLCSO_EXPORT void fillPathPointEllipse (CSO *cso, double pointDistanceInMM=1)
 Fills up the CSOPathPoints of the given CSOs to result in an ellipse. More...
 
MLCSO_EXPORT void fillPathPointsLinear (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a linear interpolation method. More...
 
MLCSO_EXPORT void fillPathPointsHermite (CSO *cso, CSOPathPoints *pPoints, const Vector3 &tangentTail, const Vector3 &tangentHead, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a Hermite interpolation method using the given tangents for the head and the tail of the path. More...
 
MLCSO_EXPORT void fillPathPointsSpline (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM=1, int splineMode=0)
 Fills up the given CSOPathPoints of the given CSO by a spline method splineMode. More...
 
MLCSO_EXPORT void fillPathPointsSplineInterpolation (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a spline interpolation method. More...
 
MLCSO_EXPORT void fillPathPointsSplineApproximation (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a spline approximation method. More...
 
MLCSO_EXPORT void fillPathPointsSplineInterpolation (CSO *cso, CSOPathPoints *pPoints, const std::vector< Vector3 > &positions, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a spline interpolation method on base of the given positions. More...
 
MLCSO_EXPORT void fillPathPointsSplineApproximation (CSO *cso, CSOPathPoints *pPoints, const std::vector< Vector3 > &positions, double pointDistanceInMM=1)
 Fills up the given CSOPathPoints of the given CSO by a spline approximation method on base of the given positions. More...
 
MLCSO_EXPORT void fillPathPointsSpline (CSO *cso, CSOPathPoints *pPoints, const std::vector< Vector3 > &positions, double pointDistanceInMM=1, int splineMode=0)
 Fills up the given CSOPathPoints of the given CSO by a spline method splineMode on base of the given positions. More...
 
MLCSO_EXPORT void fillPathPointsWithSeedPoint (CSO *cso, CSOPathPoints *pPoints)
 Fills up the given CSOPathPoints of the given CSO by the corresponding seed point. More...
 
MLCSO_EXPORT void reduceToOneSeedPoint (CSO *cso)
 Removes all seed points but the first, leaving only one path point list with all the positions. More...
 
MLCSO_EXPORT void fillPathPointsLinearNoPathChanged (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM)
 Like fillPathPointsLinear, without calling pathChanged(). More...
 
MLCSO_EXPORT void fillPathPointsSplineNoPathChanged (CSO *cso, CSOPathPoints *pPoints, double pointDistanceInMM, int splineMode)
 Like fillPathPointsSpline, without calling pathChanged(). More...
 
double _catmullRomBasisFunc (int i, double t)
 Computes value of a basis function at section i of a Catmull-Rom spline. More...
 
void _computeSingleCatmullRomPoint (int i, double t, Vector3 &pos, double *xCoords, double *yCoords, double *zCoords)
 Computes a single point for the Catmull-Rom spline interpolation. More...
 
double _B_SplineBasisFunc (int i, double t)
 Computes value of a basis function at section i of a B-Spline. More...
 
void _computeSingleB_SplinePoint (int i, double t, Vector3 &pos, double *xCoords, double *yCoords, double *zCoords)
 Computes a single point for the B-Spline approximation. More...
 

Detailed Description

The CSOGeneratePathPoints namespace offers interpolation methods (computing path points between seed points) as a linear interpolation, a spline interpolation and a spline approximation.

Function Documentation

◆ _B_SplineBasisFunc()

double ml::CSOGeneratePathPoints::_B_SplineBasisFunc ( int  i,
double  t 
)

Computes value of a basis function at section i of a B-Spline.

◆ _catmullRomBasisFunc()

double ml::CSOGeneratePathPoints::_catmullRomBasisFunc ( int  i,
double  t 
)

Computes value of a basis function at section i of a Catmull-Rom spline.

◆ _computeSingleB_SplinePoint()

void ml::CSOGeneratePathPoints::_computeSingleB_SplinePoint ( int  i,
double  t,
Vector3 pos,
double *  xCoords,
double *  yCoords,
double *  zCoords 
)

Computes a single point for the B-Spline approximation.

◆ _computeSingleCatmullRomPoint()

void ml::CSOGeneratePathPoints::_computeSingleCatmullRomPoint ( int  i,
double  t,
Vector3 pos,
double *  xCoords,
double *  yCoords,
double *  zCoords 
)

Computes a single point for the Catmull-Rom spline interpolation.

◆ fillAllPathPointsLinear()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillAllPathPointsLinear ( CSO cso,
double  pointDistanceInMM = 1 
)

Fills all CSOPathPoints of the given CSO by a linear interpolation method.

◆ fillAllPathPointsSpline()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillAllPathPointsSpline ( CSO cso,
double  pointDistanceInMM = 1,
int  splineMode = 0 
)

Fills all CSOPathPoints of the given CSO by a spline method splineMode.

◆ fillAllPathPointsSplineApproximation()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillAllPathPointsSplineApproximation ( CSO cso,
double  pointDistanceInMM = 1 
)

Fills all CSOPathPoints of the given CSO by a spline approximation method.

◆ fillAllPathPointsSplineInterpolation()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillAllPathPointsSplineInterpolation ( CSO cso,
double  pointDistanceInMM = 1 
)

Fills all CSOPathPoints of the given CSO by a spline interpolation method.

◆ fillAllPathPointsWithSeedPoints()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillAllPathPointsWithSeedPoints ( CSO cso)

Fills all CSOPathPoints of the given CSO by setting each seed point as a path point.

◆ fillPathPointEllipse()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointEllipse ( CSO cso,
double  pointDistanceInMM = 1 
)

Fills up the CSOPathPoints of the given CSOs to result in an ellipse.

The four path points need to lie on a plane, have 4 seed points where the connections of opposite seed points are orthogonal.

◆ fillPathPointsHermite()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsHermite ( CSO cso,
CSOPathPoints pPoints,
const Vector3 tangentTail,
const Vector3 tangentHead,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a Hermite interpolation method using the given tangents for the head and the tail of the path.

◆ fillPathPointsLinear()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsLinear ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a linear interpolation method.

◆ fillPathPointsLinearNoPathChanged()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsLinearNoPathChanged ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM 
)

Like fillPathPointsLinear, without calling pathChanged().

◆ fillPathPointsSpline() [1/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSpline ( CSO cso,
CSOPathPoints pPoints,
const std::vector< Vector3 > &  positions,
double  pointDistanceInMM = 1,
int  splineMode = 0 
)

Fills up the given CSOPathPoints of the given CSO by a spline method splineMode on base of the given positions.

◆ fillPathPointsSpline() [2/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSpline ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM = 1,
int  splineMode = 0 
)

Fills up the given CSOPathPoints of the given CSO by a spline method splineMode.

◆ fillPathPointsSplineApproximation() [1/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSplineApproximation ( CSO cso,
CSOPathPoints pPoints,
const std::vector< Vector3 > &  positions,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a spline approximation method on base of the given positions.

◆ fillPathPointsSplineApproximation() [2/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSplineApproximation ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a spline approximation method.

◆ fillPathPointsSplineInterpolation() [1/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSplineInterpolation ( CSO cso,
CSOPathPoints pPoints,
const std::vector< Vector3 > &  positions,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a spline interpolation method on base of the given positions.

◆ fillPathPointsSplineInterpolation() [2/2]

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSplineInterpolation ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM = 1 
)

Fills up the given CSOPathPoints of the given CSO by a spline interpolation method.

◆ fillPathPointsSplineNoPathChanged()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsSplineNoPathChanged ( CSO cso,
CSOPathPoints pPoints,
double  pointDistanceInMM,
int  splineMode 
)

Like fillPathPointsSpline, without calling pathChanged().

◆ fillPathPointsWithSeedPoint()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::fillPathPointsWithSeedPoint ( CSO cso,
CSOPathPoints pPoints 
)

Fills up the given CSOPathPoints of the given CSO by the corresponding seed point.

◆ reduceToOneSeedPoint()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::reduceToOneSeedPoint ( CSO cso)

Removes all seed points but the first, leaving only one path point list with all the positions.

◆ smoothPointsSpline()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::smoothPointsSpline ( const std::vector< Vector3 > &  inputPoints,
std::vector< Vector3 > &  outputPoints,
SplineModes  splineMode 
)

Smooths the given positions by a spline interpolation.

◆ smoothPointsSplineApproximation()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::smoothPointsSplineApproximation ( const std::vector< Vector3 > &  inputPoints,
std::vector< Vector3 > &  outputPoints 
)

Smooths the given positions by a spline approximation.

◆ smoothPointsSplineInterpolation()

MLCSO_EXPORT void ml::CSOGeneratePathPoints::smoothPointsSplineInterpolation ( const std::vector< Vector3 > &  inputPoints,
std::vector< Vector3 > &  outputPoints 
)

Smooths the given positions by a spline interpolation.