Actin  Version 5.5.5
Software for Robotics Simulation and Control
EcEndEffectorMotionInterpolatedPoseSequence Class Reference

Interpolated pose sequence. More...

#include <ecEndEffectorMotionInterpolatedPoseSequence.h>

Inheritance diagram for EcEndEffectorMotionInterpolatedPoseSequence:
[legend]
Collaboration diagram for EcEndEffectorMotionInterpolatedPoseSequence:
[legend]

Public Member Functions

void clearMotion ()
 clear all the motions in the motion vector
 
void moveLinear (const EcCoordinateSystemTransformation &waypoint, const EcReal speedFactor)
 Push back move_linear to the motion vector. More...
 
void moveCircular (const EcVector &center, const EcVector &normalDirection, const EcReal arcLengthInRadian, const EcOrientation *pGoalOrientation, const EcReal speedFactor)
 Push back move_circular to the motion vector. More...
 
void moveCircular (const EcVector &viaPoint, const EcVector &goalPoint, const EcOrientation *pGoalOrientation, const EcReal speedFactor)
 Push back move_circular to the motion vector. More...
 
void moveLinear (const EcCoordinateSystemTransformation &waypoint, const EcReal speedFactor, const EcReal accelerationFactor, const EcReal blendRadius=0)
 Push back move_linear to the motion vector. More...
 
void moveCircular (const EcVector &center, const EcVector &normalDirection, const EcReal arcLengthInRadian, const EcOrientation *pGoalOrientation, const EcReal speedFactor, const EcReal accelerationFactor, const EcReal blendRadius=0)
 Push back move_circular to the motion vector. More...
 
void moveCircular (const EcVector &viaPoint, const EcVector &goalPoint, const EcOrientation *pGoalOrientation, const EcReal speedFactor, const EcReal accelerationFactor, const EcReal blendRadius=0)
 Push back move_circular to the motion vector. More...
 
virtual const EcStringtoken () const EC_OVERRIDE
 token
 
virtual EcBoolean read (const EcMotionScriptTokenTree &tokenTree, EcString *pErrorMsg) EC_OVERRIDE
 read list More...
 
virtual EcString write () const EC_OVERRIDE
 write to script More...
 
virtual Status run (EcBaseControlSystemModifier &modifier, const EcReal currentTime) EC_OVERRIDE
 run the script More...
 
virtual void restart () EC_OVERRIDE
 restart by setting the status to NOT_STARTED More...
 
- Public Member Functions inherited from EcBaseEndEffectorMotion
void setEeIndex (const EcU32 eeIndex)
 set end effector index
 
void setEeIndex (const EcMotionScriptU32ObjectSharedPtr &pEeIndex)
 set end effector index
 
void setBufferMode (const EcU32 value)
 Set buffer mode. More...
 
EcU32 bufferMode () const
 Get is buffered. More...
 
- Public Member Functions inherited from EcBaseEndEffectorSetMotion
void setEeSetIndex (const EcU32 eeSetIndex)
 set end effector set index
 
void setEeSetIndex (const EcMotionScriptU32ObjectSharedPtr &pEeSetIndex)
 set end effector set index
 
- Public Member Functions inherited from EcBaseManipulatorMotion
void setManipulatorIndex (const EcU32 manipIndex)
 set manipulator index
 
void setManipulatorIndex (const EcMotionScriptU32ObjectSharedPtr &pManipIndex)
 set manipulator index
 
const EcMotionScriptU32ObjectSharedPtr & manipulatorIndex () const
 get manipulator index
 
void setMotionId (const EcInt32 id)
 Set the motion ID.
 
EcInt32 motionId () const
 Get the motion ID.
 
- Public Member Functions inherited from EcMotionScriptObject
 EcMotionScriptObject ()
 default constructor
 
virtual ~EcMotionScriptObject ()
 destructor
 
Status status () const
 get status
 
EcReal progress () const
 get progress in [0, 1]
 
virtual EcBoolean setContainer (EcBaseMotionScriptContainer *pContainer)
 set the container More...
 
virtual EcMotionScriptObjectclone (EcBaseMotionScriptContainer *pContainer) const
 Clone with container. More...
 
EcBoolean readWithContainer (const EcMotionScriptTokenTree &tokenTree, EcBaseMotionScriptContainer *pContainer, EcString *pErrorMsg)
 read with container
 
virtual void pause ()
 request to pause
 
virtual void resume ()
 request to resume
 

Static Public Member Functions

static EcMotionScriptObjectnewObject ()
 motion script object creator
 
static const EcStringscriptToken ()
 script token
 
- Static Public Member Functions inherited from EcBaseEndEffectorSetMotion
static EcReal calculateRealVectorDifference (const EcRealVector &actual, const EcRealVector &desired)
 calculate the difference between two real vectors
 
- Static Public Member Functions inherited from EcMotionScriptObject
static EcMotionScriptSharedPtr parseScript (const EcString &script, EcString *pErrorMsg)
 parse script
 
static EcMotionScriptSharedPtr parseScript (const EcMotionScriptTokenTree &tokenTree, EcBaseMotionScriptContainer *pContainer, EcString *pErrorMsg)
 parse script
 
static EcBoolean isKeyword (const EcString &symbol)
 is keyword
 
static EcBoolean tokenize (const EcString &script, EcStringList &tokens, EcString *pErrorMsg)
 tokenize
 
static EcBoolean readFromTokens (EcStringList &tokens, EcMotionScriptTokenTree &tokenTree, EcString *pErrorMsg)
 read from tokens
 
static EcBoolean registerScript (const EcString &scriptToken, const EcMotionScriptObjectCreator &creator)
 
static EcStringSet registeredScriptTokens ()
 

Protected Member Functions

void addMotion (const EcInterpolatedEndEffectorMotionSharedPtr &pMotion)
 Add an interpolated end-effector motion.
 
void calculateProgress ()
 calculate progress
 
void runInProgress (EcBaseControlSystemModifier &modifier, const EcReal currentTime)
 run during IN_PROGRESS
 
void runStopping (EcBaseControlSystemModifier &modifier, const EcReal currentTime)
 run during STOPPING
 
- Protected Member Functions inherited from EcBaseEndEffectorMotion
virtual EcBoolean calculatePositionDifference (const EcBaseControlSystemModifier &modifier, const EcEndEffectorPlacement &desired, EcEndEffectorPlacement &actual, EcReal &difference) const
 calculate position difference from desired
 
EcBoolean calculatePositionProgress (const EcBaseControlSystemModifier &modifier, const EcReal initialDifference, const EcReal tolerance, const EcEndEffectorPlacement &desired, EcEndEffectorPlacement &actual, EcReal &progress) const
 
EcBoolean calculateVelocityDifference (const EcBaseControlSystemModifier &modifier, const EcRealVector &desired, EcXmlRealVector &actual, EcReal &difference) const
 calculate current velocity difference from desired
 
EcBoolean calculateVelocityProgress (const EcBaseControlSystemModifier &modifier, const EcReal initialDifference, const EcReal tolerance, const EcRealVector &desired, EcXmlRealVector &actual, EcReal &progress) const
 

Protected Attributes

EcInterpolatedEndEffectorMotionVector m_MotionVector
 
EcGroupMotionManager m_GroupMotionManager
 
EcSizeT m_CurrentIndex
 
- Protected Attributes inherited from EcBaseEndEffectorMotion
EcMotionScriptU32ObjectSharedPtr m_pEeIndex
 EE index.
 
EcU32 m_BufferMode
 used by the group motion manager
 
- Protected Attributes inherited from EcBaseEndEffectorSetMotion
EcMotionScriptU32ObjectSharedPtr m_pEeSetIndex
 EE set index.
 
- Protected Attributes inherited from EcBaseManipulatorMotion
EcMotionScriptU32ObjectSharedPtr m_pManipIndex
 manipulator index
 
EcInt32 m_MotionId
 the motion ID, currently only used by the group motion manager
 
- Protected Attributes inherited from EcMotionScriptObject
EcBaseMotionScriptContainerm_pContainer
 the container
 
Status m_Status
 motion status
 
EcReal m_Progress
 motion script progress in [0, 1]
 
EcBoolean m_PauseFlag
 

Additional Inherited Members

- Public Types inherited from EcMotionScriptObject
enum  Status {
  NOT_STARTED,
  IN_PROGRESS,
  STOPPING,
  PAUSED,
  SUCCEEDED,
  FAILED
}
 status
 
- Static Protected Member Functions inherited from EcBaseEndEffectorMotion
static EcBoolean parseSpeedAndAccelerationFactors (const EcMotionScriptTokenTree &tokenTree, EcBaseMotionScriptContainer *pContainer, EcString *pErrorMsg, EcMotionScriptRealObjectSharedPtr &speedFactor, EcMotionScriptRealObjectSharedPtr &accelerationFactor)
 parse speed and acceleration factors
 
static EcString writeSpeedAndAccelerationFactors (const EcMotionScriptRealObjectSharedPtr &speedFactor, const EcMotionScriptRealObjectSharedPtr &accelerationFactor)
 write speed and acceleration factors
 
static EcBoolean parsePostionAndVelocityTolerances (const EcMotionScriptTokenTree &tokenTree, EcBaseMotionScriptContainer *pContainer, EcString *pErrorMsg, EcMotionScriptRealObjectSharedPtr &positionTolerance, EcMotionScriptRealObjectSharedPtr &velocityTolerance)
 parse position and velocity tolerances
 
static EcString writePostionAndVelocityTolerances (const EcMotionScriptRealObjectSharedPtr &positionTolerance, const EcMotionScriptRealObjectSharedPtr &velocityTolerance)
 write position and velocity tolerances
 

Detailed Description

Interpolated pose sequence.

Note
This class is a friend class of EcBaseInterpolatedEndEffectorMotion.

Definition at line 18 of file ecEndEffectorMotionInterpolatedPoseSequence.h.

Member Function Documentation

void EcEndEffectorMotionInterpolatedPoseSequence::moveCircular ( const EcVector center,
const EcVector normalDirection,
const EcReal  arcLengthInRadian,
const EcOrientation pGoalOrientation,
const EcReal  speedFactor 
)

Push back move_circular to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

void EcEndEffectorMotionInterpolatedPoseSequence::moveCircular ( const EcVector viaPoint,
const EcVector goalPoint,
const EcOrientation pGoalOrientation,
const EcReal  speedFactor 
)

Push back move_circular to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

void EcEndEffectorMotionInterpolatedPoseSequence::moveCircular ( const EcVector center,
const EcVector normalDirection,
const EcReal  arcLengthInRadian,
const EcOrientation pGoalOrientation,
const EcReal  speedFactor,
const EcReal  accelerationFactor,
const EcReal  blendRadius = 0 
)

Push back move_circular to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

See also
EcEndEffectorMotionMoveCircular::moveCircular
void EcEndEffectorMotionInterpolatedPoseSequence::moveCircular ( const EcVector viaPoint,
const EcVector goalPoint,
const EcOrientation pGoalOrientation,
const EcReal  speedFactor,
const EcReal  accelerationFactor,
const EcReal  blendRadius = 0 
)

Push back move_circular to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

See also
EcEndEffectorMotionMoveCircular::moveCircular
void EcEndEffectorMotionInterpolatedPoseSequence::moveLinear ( const EcCoordinateSystemTransformation waypoint,
const EcReal  speedFactor 
)

Push back move_linear to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

void EcEndEffectorMotionInterpolatedPoseSequence::moveLinear ( const EcCoordinateSystemTransformation waypoint,
const EcReal  speedFactor,
const EcReal  accelerationFactor,
const EcReal  blendRadius = 0 
)

Push back move_linear to the motion vector.

Do NOT call this method before the manipulator index, end-effector set index, and end-effector index are set.

See also
EcEndEffectorMotionMoveLinear::moveLinear
virtual EcBoolean EcEndEffectorMotionInterpolatedPoseSequence::read ( const EcMotionScriptTokenTree tokenTree,
EcString pErrorMsg 
)
virtual

read list

Implements EcMotionScriptObject.

virtual void EcEndEffectorMotionInterpolatedPoseSequence::restart ( )
virtual

restart by setting the status to NOT_STARTED

Implements EcBaseEndEffectorMotion.

virtual Status EcEndEffectorMotionInterpolatedPoseSequence::run ( EcBaseControlSystemModifier modifier,
const EcReal  currentTime 
)
virtual

run the script

Implements EcBaseEndEffectorMotion.

virtual EcString EcEndEffectorMotionInterpolatedPoseSequence::write ( ) const
virtual

write to script

Implements EcMotionScriptObject.


The documentation for this class was generated from the following file: