Go to the documentation of this file. 1 #ifndef CscSequenceMovements_H_
2 #define CscSequenceMovements_H_
10 using std::min, std::max;
63 firstStateId(firstStateId),
64 secondStateId(secondStateId),
65 loopFirstStateValue(loopFirstStateValue),
66 loopSecondStateValue(loopSecondStateValue) {}
76 : translationSpeedTarget(translationSpeed),
77 rotationSpeedTarget(rotationSpeed),
78 positionError(posError),
79 orientationError(orientError) {}
91 : translationSpeedMaxInCmBySecond(translationSpeedMax),
92 rotationSpeedMaxInCmBySecond(rotationSpeedMax),
93 wheelSpacing(wheelSpacing) {}
107 : currentPosition(currentPosition),
108 currentYaw(currentYaw) {}
124 bool requiertAlignement =
false;
134 optional<EnslavementAlignementType> getAlignmentType()
const;
136 int getMovementDirection()
const;
139 const optional<MovementStatesParameters> getStatesParameters()
const;
152 double getAngleTarget()
const;
192 const double MAX_DISTANCE_LOOK_HEAD_CENTIMETERS = 25;
193 const double MIN_DISTANCE_LOOK_HEAD_CENTIMETERS = 10;
194 const double MAX_DERIVE_ANGLE_IN_DEGREES = 15.0;
206 vector<CscPoint3d *> *getPoints()
const;
207 int countPoint()
const;
215 const double MINIMUM_RADIUS_FOR_SPEED_IN_CENTIMETERS = 30.0;
229 double getRadius()
const;
230 int getArcDirection()
const;
247 int countMovements()
const;
253 vector<CscMovement *> *getMovements()
const;
255 void setMovements(vector<CscMovement *> *movements);
MovementType
Definition: CscSequenceMovements.h:15
MovementStatesType type
How states alternate (continuous, loop by distance, or loop by time)
Definition: CscSequenceMovements.h:55
The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a ...
Definition: Csc3dTypes.h:24
int arcDirection
Definition: CscSequenceMovements.h:218
optional< double > loopFirstStateValue
Distance or time value for first state (optional)
Definition: CscSequenceMovements.h:58
@ ALIGNEMENT_OUT_OF_LINE
Definition: CscSequenceMovements.h:47
optional< double > rotationSpeedMaxInCmBySecond
Definition: CscSequenceMovements.h:84
vector< CscPoint3d * > * points
Definition: CscSequenceMovements.h:196
RobotNavigationParameters(optional< double > translationSpeedMax={}, optional< double > rotationSpeedMax={}, optional< double > wheelSpacing={})
Definition: CscSequenceMovements.h:87
optional< EnslavementAlignementType > alignement
Definition: CscSequenceMovements.h:120
Definition: CscSequenceMovements.h:213
Definition: Csc2dTypes.cpp:9
@ ALIGNEMENT_IN_OF_LINE
Definition: CscSequenceMovements.h:46
int firstStateId
start state ID
Definition: CscSequenceMovements.h:56
Definition: CscSequenceMovements.h:82
optional< double > wheelSpacing
Definition: CscSequenceMovements.h:85
Definition: CscSequenceMovements.h:177
CscPoint3d * center
Definition: CscSequenceMovements.h:216
@ ALIGNMENT
Definition: CscSequenceMovements.h:41
@ STATES_TYPE
Definition: CscSequenceMovements.h:40
int movementDirection
Definition: CscSequenceMovements.h:122
CscSequencePositionType
Definition: CscSequencePositions.h:18
double radius
Definition: CscSequenceMovements.h:217
MovementOptionalAttribut
Definition: CscSequenceMovements.h:39
int secondStateId
Alternate/end state ID.
Definition: CscSequenceMovements.h:57
vector< CscMovement * > * movements
Definition: CscSequenceMovements.h:258
double angleTarget
Definition: CscSequenceMovements.h:147
Definition: conscience_log.cpp:20
uint8_t MovementOptionalAttributType
Definition: CscSequenceMovements.h:38
@ SPEED
Definition: CscSequenceMovements.h:42
uint32_t index(const std::array< char, 64 > &alphabet, char symbol)
Definition: base.h:91
optional< double > translationSpeedMaxInCmBySecond
Definition: CscSequenceMovements.h:83
MovementStatesType
Definition: CscSequenceMovements.h:29
Definition: CscSequenceMovements.h:116
type
Generic JSON types used in JWTs.
Definition: jwt.h:1794
MovementType type
Definition: CscSequenceMovements.h:118
const ptr< CscObjectModel > const string const CscPoint3d const CscPoint3d optional< double >
Definition: environmentObjectsCommands.h:367
Definition: CscSequenceMovements.h:145
optional< double > speed
Definition: CscSequenceMovements.h:121
virtual ~CscMovement()
Definition: CscSequenceMovements.h:130
Definition: CscSequenceMovements.h:190
const ptr< CscObjectModel > const string const CscPoint3d const CscPoint3d optional< string >
Definition: environmentObjectsCommands.h:373
Definition: CscSequenceMovements.h:236
CscSequencePositionType positionType
Definition: CscSequenceMovements.h:123
MovementStatesParameters(MovementStatesType type, int firstStateId, int secondStateId, optional< double > loopFirstStateValue, optional< double > loopSecondStateValue)
Definition: CscSequenceMovements.h:61
optional< double > loopSecondStateValue
Distance or time value for second state (optional)
Definition: CscSequenceMovements.h:59
Definition: CscSequenceMovements.h:158
optional< MovementStatesParameters > statesParameters
Definition: CscSequenceMovements.h:119
Definition: CscSequence.h:51
EnslavementAlignementType
Definition: CscSequenceMovements.h:45
@ NO_ALIGNMENT
Definition: CscSequenceMovements.h:48
Definition: CscSequenceMovements.h:54