INOS
|
Public Member Functions | |
void | AddPart (CINOSMovePathPart *apPart, uint32 auFlags) |
add part to segment | |
uint32 | GetParts () |
get number of parts | |
CINOSMovePathPart * | GetPart (uint32 auNumber) |
get n-th part | |
virtual void | GetPosition (double adP, TINOSMovePathVec &ovPos) override |
get position at 'adP' | |
virtual void | GetDerivative (uint32 auLevel, double adP, TINOSMovePathVec &ovDir) override |
get auLevel derivative at 'adP' | |
virtual void | GetD2max (TINOSMovePathVec &ovD2max) override |
get D2 max | |
virtual void | GetD3max (TINOSMovePathVec &ovD3max) override |
get D3 max | |
double | GetMaxVectorLength (double adError) |
get vector length for given error | |
virtual void | GetDerivativeBgn (uint32 auLevel, TINOSMovePathVec &ovDir) override |
get auLevel derivative at segment begin | |
virtual void | GetDerivativeEnd (uint32 auLevel, TINOSMovePathVec &ovDir) override |
get auLevel derivative at segment end | |
virtual uint32 | Check () override |
check segment integrity (called before added to curve) | |
virtual uint32 | Prepare (double &adP, uint32 uIncremental, TINOSMovePathVec &ovPos, double adEpsilon) override |
prepare segment | |
virtual void | Recalc (double &adP, TINOSMovePathVec &ovStart, uint32 auInvolved, double adEpsilon) override |
prepare segment | |
virtual bool | IsStartBlendingAllowed () override |
return true if start blending allowed | |
virtual bool | IsEndBlendingAllowed () override |
return true if end blending allowed | |
virtual bool | IsContinuous (uint32 auLevel) override |
return true if segment is auLevel continuous | |
CINOSMovePathSegmentBase () | |
constructor | |
CINOSMovePathSegmentBase (uint32 auId, uint32 auFlags, double adTolerance, double adVelocity) | |
constructor | |
virtual | ~CINOSMovePathSegmentBase () |
destructor | |
void | DestroyParts () |
destroy parts | |
![]() | |
double | GetLength () |
get segment length | |
double | GetLength_1 () |
get segment 1/length | |
uint32 | GetId () |
get segment id | |
uint32 | GetFlags () |
get flags | |
void | SetFlags (uint32 auFlags) |
set flags | |
bool | IsPureLinear () |
return true if segment is pure linear | |
bool | IsPureRapid () |
return true if segment is pure linear | |
virtual void | GetPositionFirst (TINOSMovePathVec &ovPos) |
get start position | |
virtual void | GetPositionLast (TINOSMovePathVec &ovPos) |
get end position | |
CINOSMovePathSegment * | GetNext () |
get pointer to next segment in chain | |
void | SetNext (CINOSMovePathSegment *apSegment) |
set pointer to next segment in chain | |
CINOSMovePathSegment * | GetPrevious () |
get pointer to previous segment in chain | |
void | SetPrevious (CINOSMovePathSegment *apSegment) |
set pointer to previous segment in chain | |
uint32 | GetInvolved () |
get involved axes | |
double | GetStart () |
get segment start | |
virtual void | SetStart (double &adP) |
set segment start, adjusts segment end accordingly and sets adP to new end. | |
double | GetEnd () |
get segment end | |
double | GetTolerance () |
get segment tolerance | |
double | GetVelocity () |
get segment velocity | |
uint32 | GetLengthMask () |
get segment length mask | |
CINOSMovePathSegment () | |
constructor | |
CINOSMovePathSegment (uint32 auId, uint32 auFlags, double adTolerance, double adVelocity) | |
constructor | |
virtual | ~CINOSMovePathSegment () |
destructor | |
Protected Member Functions | |
DECLARE_DYNAMIC (CINOSMovePathSegmentBase) | |
![]() | |
DECLARE_DYNAMIC (CINOSMovePathSegment) | |
Protected Attributes | |
class CINOSMovePathPart * | m_pParts [DF_INOS_MOVEPATH_MAX_AXES] |
array of my parts. Can store at most as many parts as supported "axes" | |
![]() | |
uint32 | m_uFlags |
segment flags | |
double | m_dLength |
segment length | |
double | m_dLength_1 |
segment 1/length | |
uint32 | m_uId |
segment id | |
uint32 | m_uInvolved |
involved axes | |
uint32 | m_uAbsolute |
absolute mask (bit = 1 -> corresponding part is absolute) | |
uint32 | m_uIncremental |
incremental mask (bit = 1 -> corresponding part is incremental) | |
uint32 | m_uLengthMask |
length mask (bit = 1 -> corresponding part is NOT length relevant) | |
double | m_dTolerance |
tolerance | |
double | m_dVelocity |
velocity | |
double | m_dStart |
segment start position | |
double | m_dEnd |
segment end position | |
TINOSMovePathVec | m_vStart |
segment start position vector | |
TINOSMovePathVec | m_vEnd |
segment end position vector | |
CINOSMovePathSegment * | m_pNxtSegment |
pointer to next segment in chain | |
CINOSMovePathSegment * | m_pPrvSegment |
pointer to previous segment in chain | |
Friends | |
class | CINOSMovePath |
class | CINOSMovePathCurve |
|
inlineoverridevirtual |
check segment integrity (called before added to curve)
Implements CINOSMovePathSegment.
get D2 max
Implements CINOSMovePathSegment.
get D3 max
Implements CINOSMovePathSegment.
|
overridevirtual |
get auLevel derivative at 'adP'
Implements CINOSMovePathSegment.
|
overridevirtual |
get auLevel derivative at segment begin
Implements CINOSMovePathSegment.
|
overridevirtual |
get auLevel derivative at segment end
Implements CINOSMovePathSegment.
|
overridevirtual |
get position at 'adP'
Implements CINOSMovePathSegment.
return true if segment is auLevel continuous
Implements CINOSMovePathSegment.
return true if end blending allowed
Reimplemented from CINOSMovePathSegment.
return true if start blending allowed
Reimplemented from CINOSMovePathSegment.
|
overridevirtual |
prepare segment
Implements CINOSMovePathSegment.
|
overridevirtual |
prepare segment
Implements CINOSMovePathSegment.