OriPrimAxis_Create (FUN) ¶ FUNCTION OriPrimAxis_Create : BOOL InOut: Scope Name Type Inout errCtx SMRE.ErrorContext ef ElemFun traces ElemFunTraces Inout Const poseStart ElemFunPose poseDest ElemFunPose cdStart TRAFO.CONFIGDATA cdDest TRAFO.CONFIGDATA aRefStart TRAFO.AXISPOS_REF aRefDest TRAFO.AXISPOS_REF Input kinCoupled TRAFO.ISMCoupledKinematics kinPos TRAFO.ISMPositionKinematics_Offset kinOri TRAFO.ISMOrientationKinematics Return OriPrimAxis_Create BOOL
OriPrimAxis_Eval (FUN) ¶ FUNCTION OriPrimAxis_Eval : BOOL InOut: Scope Name Type Comment Inout errCtx SMRE.ErrorContext Inout Const ef ElemFun vTCP SM3M.SMC_VECTOR3D The TCP, expressed in the MCS aRef TRAFO.AXISPOS_REF Inout mOri SM3M.SMC_Matrix3 The orientation at position x, expressed in the MCS a TRAFO.AXISPOS_REF The position of all axes at position x Input lambda LREAL t LREAL bComputeACSOnly BOOL bApplyARef BOOL Return OriPrimAxis_Eval BOOL
OriDynState_Interpolate (FUN) ¶ FUNCTION OriDynState_Interpolate InOut: Scope Name Type Inout ov OriDynState Inout Const q0 SM3M.SMC_Quat qLog SM3M.SMC_Quat Input lambda LREAL
OriDynState_UnapplyParamState (FUN) ¶ FUNCTION OriDynState_UnapplyParamState : BOOL Assuming ovSrc(x) = ovDst(sigma(x)), and given ps = (sigma(x), sigma’(x), sigma’’(x)), computes the first two derivatives of ovDst(sigma(x)) according to the chain rule. Note: if sigma’(x) = 0, then an error is returned. InOut: Scope Name Type Return OriDynState_UnapplyParamState BOOL Inout ovDst OriDynState Inout Const ovSrc OriDynState ps ParamState
OriPrimAxis (STRUCT) ¶ TYPE OriPrimAxis EXTENDS ElemPrimBase : STRUCT Data for linear orientation axis interpolation. InOut: Name Type Comment Inherited from pef0 POINTER TO ElemFun Pointer to a copy of the previous element. If set, can be evaluated at x = 0 to obtain the start position of this element. ElemPrimBase pef1 POINTER TO ElemFun Pointer to a copy of the subsequent element. If set, can be evaluated at x = pef1^.l to obtain the end position of this element. ElemPrimBase pTrace0 POINTER TO ElemFunTrace ElemPrimBase pTrace1 POINTER TO ElemFunTrace ElemPrimBase kinCoupled TRAFO.ISMCoupledKinematics The coupled kinematics kinPos TRAFO.ISMPositionKinematics_Offset The positioning kinematics kinOri TRAFO.ISMOrientationKinematics The orientation kinematics aInfosPos AxisInfos The axis information for the position axes aInfosOri AxisInfos The axis info for the orientation axes
OriPrimAxis_EvalAxes (FUN) ¶ FUNCTION OriPrimAxis_EvalAxes : BOOL InOut: Scope Name Type Comment Inout errCtx SMRE.ErrorContext Inout Const ef ElemFun aRef TRAFO.AXISPOS_REF Inout vOri SM3M.SMC_Vec The position of all orientation axes at position lambda configOffsetStart TRAFO.CONFIGDATA Input lambda LREAL t LREAL bApplyARef BOOL Return OriPrimAxis_EvalAxes BOOL
OriPrimAxis_EvalAxesOrigStartEnd (FUN) ¶ FUNCTION OriPrimAxis_EvalAxesOrigStartEnd : BOOL InOut: Scope Name Type Inout errCtx SMRE.ErrorContext Inout Const ef ElemFun Inout vS_Ori SM3M.SMC_Vec vD_Ori SM3M.SMC_Vec configOffsetStart TRAFO.CONFIGDATA Input t LREAL Return OriPrimAxis_EvalAxesOrigStartEnd BOOL
OriPrimAxis_GetOffsetConfig (FUN) ¶ FUNCTION OriPrimAxis_GetOffsetConfig : BOOL InOut: Scope Name Type Comment Inout errCtx SMRE.ErrorContext configOffset TRAFO.CONFIGDATA The offset configuration that belongs to the given axis position Inout Const a TRAFO.AXISPOS_REF fToolOffset SM3M.SMC_Frame Input kinCoupled TRAFO.ISMCoupledKinematics kinPos TRAFO.ISMPositionKinematics_Offset kinTool TRAFO.ISMOrientationKinematics Return OriPrimAxis_GetOffsetConfig BOOL
OriPrimGreatCircle (STRUCT) ¶ TYPE OriPrimGreatCircle EXTENDS ElemPrimBase : STRUCT Data for the orientation interpolation along the great circle. The orientations are represented as unit quaternions. The formula is o(l) = exp(wD * l) * q0 Only applicable if the angular velocity is constant across the element, and if the angular acceleration consequently is zero. InOut: Name Type Comment Inherited from pef0 POINTER TO ElemFun Pointer to a copy of the previous element. If set, can be evaluated at x = 0 to obtain the start position of this element. ElemPrimBase pef1 POINTER TO ElemFun Pointer to a copy of the subsequent element. If set, can be evaluated at x = pef1^.l to obtain the end position of this element. ElemPrimBase pTrace0 POINTER TO ElemFunTrace ElemPrimBase pTrace1 POINTER TO ElemFunTrace ElemPrimBase q0 SM3M.SMC_Quat The start orientation corresponding to l=0. wD SM3M.SMC_Quat The logarithm of delta orientation: ln(q1*q0^(-1)).
OriPrimGreatCircle_Create (FUN) ¶ FUNCTION OriPrimGreatCircle_Create : BOOL InOut: Scope Name Type Comment Inout errCtx SMRE.ErrorContext ef ElemFun Inout Const qStart SM3M.SMC_Quat The start orientation. qDest SM3M.SMC_Quat The destination orientation. Return OriPrimGreatCircle_Create BOOL