49 #ifndef __TypeIIRMLVelocity__ 50 #define __TypeIIRMLVelocity__ 128 ,
const double &CycleTimeInSeconds);
308 int GetNextStateOfMotionAtTime(
const double &TimeValueInSeconds
324 FUNC_SUCCESS =
false,
326 FUNC_ERROR_OCCURRED =
true 409 void CalculateExecutionTimes(
void);
433 void ComputeTrajectoryParameters(
void);
457 void ComputePhaseSynchronizationParameters(
void);
475 void ComputeTimeSynchronizedTrajectoryParameters(
void);
515 int ComputeAndSetOutputParameters(
const double &TimeValueInSeconds
564 bool IsPhaseSynchronizationPossible(
void);
617 void CalculatePositionalExtrems(
const double &TimeValueInSeconds
690 void SetupPhaseSyncSelectionVector(
void);
Header file for the dynamic vector class used for the Reflexxes Motion Libraries. ...
double InternalClockInSeconds
In order to prevent from recalculating the trajectory within every control cycle and to safe CPU time...
RMLDoubleVector * PhaseSynchronizationTargetVelocityVector
Target velocity vector used for the calculation of phase-synchronized motion trajectories.
Data structure containing flags to parameterize the execution of the velocity-based On-Line Trajector...
double SynchronizationTime
If the trajectory is time- or phase-synchronized, this attribute will contain the synchronization tim...
RMLVelocityFlags OldFlags
In order to check, whether a new calculation has to be started, the input values have to be compared ...
Three arrays of TypeIIRMLMath::TypeIIRMLPolynomial.
bool CalculatePositionalExtremsFlag
Indicates, whether the positional extremes are to be calculated.
RMLDoubleVector * ExecutionTimes
Vector of double values, each of which represents an execution time that is used internally.
Header file for the class RMLVelocityFlags.
RMLBoolVector * PhaseSyncSelectionVector
Boolean vector, which contains the modified selection vector that is based on the original selection ...
Header file for the class TypeIIRMLMath::TypeIIRMLPolynomial and the struct TypeIIRMLMath::MotionPoly...
RMLVelocityInputParameters * CurrentInputParameters
Pointer to an RMLVelocityInputParameters object. This object contains a complete set of input values ...
double CycleTime
Contains the cycle time in seconds.
bool CurrentTrajectoryIsPhaseSynchronized
Indicates, whether the current trajectory is phase-synchronized.
Header file for the class RMLVelocityOutputParameters.
Class for the output parameters of the velocity-based On-Line Trajectory Generation algorithm...
RMLDoubleVector * PhaseSynchronizationMaxAccelerationVector
Contains the adapted maximum acceleration vector for phase-synchronized trajectories.
RMLVelocityOutputParameters * OutputParameters
Pointer to an RMLVelocityOutputParameters object. This object contains the output parameters of the m...
RMLDoubleVector * PhaseSynchronizationCurrentVelocityVector
Current velocity vector used for the calculation of phase-synchronized motion trajectories.
RMLDoubleVector * PhaseSynchronizationReferenceVector
Reference vector for phase-synchronized trajectories, with .
FunctionResults
For class-internal use only: return values of boolean methods.
unsigned int NumberOfDOFs
The number of degrees of freedom .
unsigned int DOFWithGreatestExecutionTime
Index of the degree of freedom that requires the greatest execution time.
int ReturnValue
Contains the return value of the method TypeIIRMLVelocity::GetNextStateOfMotion() ...
bool CurrentTrajectoryIsNotSynchronized
Indicates, that the current trajectory is not synchronized.
MotionPolynomials * Polynomials
Pointer to an array of MotionPolynomials objects, which contains the actual trajectory ...
This is a minimalistic dynamic vector class implementation used for the Reflexxes Motion Libraries...
RMLVelocityInputParameters * OldInputParameters
Pointer to an RMLVelocityInputParameters object. In order to check, whether a new calculation has to ...
This class constitutes the user interface of velocity-based the Type II On-Line Trajectory Generation...