Go to the documentation of this file.
27 #ifndef INC_CINOSMOVEPATHSEGMENTNURBS_H
28 #define INC_CINOSMOVEPATHSEGMENTNURBS_H
61 void AddKnot(
double adKnot, uint32 auMultiplicity = 1)
68 virtual void GetPosition(
double adP, TINOSMovePathVec& ovPos)
override
92 virtual void GetDerivative(uint32 auLevel,
double adP, TINOSMovePathVec& ovDir)
override
99 virtual void GetD2max(TINOSMovePathVec& ovD2max)
override
106 virtual void GetD3max(TINOSMovePathVec& ovD3max)
override
134 virtual uint32
Prepare(
double& adP, uint32 uIncremental,
135 TINOSMovePathVec& ovPos,
double adEpsilon)
override;
139 virtual void Recalc(
double& adP, TINOSMovePathVec& ovStart, uint32 auInvolved,
140 double adEpsilon)
override
173 uint32 auInterpolationPoints, uint32 auLengthMask,
double adVelocity);
191 #endif // INC_CINOSMOVEPATHSEGMENTNURBS_H
virtual void GetD2max(TINOSMovePathVec &ovD2max) override
get max. second derivative over the whole segment
Definition: cinosmovepathsegmentnurbs.h:99
virtual bool IsEndBlendingAllowed() override
return true if end blending allowed
Definition: cinosmovepathsegmentnurbs.h:145
The CINOSMovePathSegment class.
void AddPoint(CINOSNurbsPoint< N > &aPoint)
add control point to curve
Definition: cinosnurbscurve.h:77
virtual void GetD3max(TINOSVector< N > &ovD3Max)
get max. 3rd derivative over the whole curve
Definition: cinosnurbscurve.h:628
virtual void GetPosition(double adP, TINOSVector< N > &ovPos)
get position at 'adP'
Definition: cinosnurbscurve.h:384
virtual void GetPositionFirst(TINOSVector< N > &ovPos)
get first position
Definition: cinosnurbscurve.h:404
virtual void GetDerivative(uint32 auLevel, double adP, TINOSMovePathVec &ovDir) override
get auLevel derivative at 'adP'
Definition: cinosmovepathsegmentnurbs.h:92
Definition: cinosmovepathsegmentnurbs.h:46
virtual bool IsContinuous(uint32 auLevel) override
return true if segment is auLevel continuous
Definition: cinosmovepathsegmentnurbs.h:152
virtual void GetD2max(TINOSVector< N > &ovD2Max)
get max. second derivative over the whole curve
Definition: cinosnurbscurve.h:603
CINOSNurbsCurve< DF_INOS_MOVEPATH_MAX_AXES > * m_pCurve
pointer to nurbs curve
Definition: cinosmovepathsegmentnurbs.h:180
virtual uint32 Check() override
check segment integrity (called before added to curve)
Definition: cinosmovepathsegmentnurbs.h:127
virtual void GetD3max(TINOSMovePathVec &ovD3max) override
get max. 3rd derivative over the whole segment
Definition: cinosmovepathsegmentnurbs.h:106
void AddKnot(double adKnot, uint32 auMultiplicity)
add knot to curve
Definition: cinosnurbscurve.h:108
Definition: cinosmovepath.h:549
virtual void Recalc(double &adP, TINOSMovePathVec &ovStart, uint32 auInvolved, double adEpsilon) override
prepare segment
Definition: cinosmovepathsegmentnurbs.h:139
void AddPoint(CINOSNurbsPoint< DF_INOS_MOVEPATH_MAX_AXES > &aPoint)
add point to segment
Definition: cinosmovepathsegmentnurbs.h:54
Definition: cinosmovepathsegment.h:44
Definition: cinosmovepathcurve.h:55
Definition: cinosnurbspoint.h:46
virtual void GetPositionLast(TINOSMovePathVec &ovPos) override
get last position
Definition: cinosmovepathsegmentnurbs.h:84
virtual void GetPositionLast(TINOSVector< N > &ovPos)
get last position
Definition: cinosnurbscurve.h:411
CINOSMovePathSegmentNurbs(uint32 auId, uint32 auFlags, uint32 auDegree, uint32 auInterpolationPoints, uint32 auLengthMask, double adVelocity)
constructor
The CINOSNurbsCurve class.
uint32 Check()
check curve
Definition: cinosnurbscurve.h:141
void AddKnot(double adKnot, uint32 auMultiplicity=1)
add knot to segment
Definition: cinosmovepathsegmentnurbs.h:61
virtual void GetDerivativeEnd(uint32 auLevel, TINOSMovePathVec &ovDir) override
get auLevel derivative at segment end
Definition: cinosmovepathsegmentnurbs.h:120
virtual void GetPosition(double adP, TINOSMovePathVec &ovPos) override
get position at 'adP'
Definition: cinosmovepathsegmentnurbs.h:68
virtual void GetDerivativeEnd(uint32 auLevel, TINOSVector< N > &ovDer)
get auLevel derivative at curve end
Definition: cinosnurbscurve.h:497
TINOSMovePathVec m_vStart
segment start position vector
Definition: cinosmovepathsegment.h:296
CINOSNurbsCurve< DF_INOS_MOVEPATH_MAX_AXES > * GetCurve()
return pointer to curve
Definition: cinosmovepathsegmentnurbs.h:159
virtual uint32 Prepare(double &adP, uint32 uIncremental, TINOSMovePathVec &ovPos, double adEpsilon) override
prepare segment
virtual void GetPositionFirst(TINOSMovePathVec &ovPos) override
get last position
Definition: cinosmovepathsegmentnurbs.h:76
virtual void GetDerivativeBgn(uint32 auLevel, TINOSVector< N > &ovDer)
get auLevel derivative at curve begin
Definition: cinosnurbscurve.h:490
virtual void GetDerivativeBgn(uint32 auLevel, TINOSMovePathVec &ovDir) override
get auLevel derivative at segment begin
Definition: cinosmovepathsegmentnurbs.h:113
virtual void GetDerivative(uint32 auLevel, double adP, TINOSVector< N > &ovDer)
get auLevel derivative at 'adP'
Definition: cinosnurbscurve.h:481
double m_dStart
segment start position
Definition: cinosmovepathsegment.h:292