MRSL Motion Primitive Library  1.2
A motion primitive library for generating trajectory for mobile robots
Classes | Typedefs | Functions
primitive.h File Reference

Primitive classes. More...

#include <mpl_basis/data_type.h>
#include <mpl_basis/waypoint.h>
#include "math.h"

Go to the source code of this file.

Classes

class  Primitive1D
 Primitive1D class. More...
 
class  Primitive< Dim >
 Primitive class. More...
 

Typedefs

typedef Primitive< 2 > Primitive2D
 Primitive for 2D.
 
typedef Primitive< 3 > Primitive3D
 Primitive for 3D.
 

Functions

template<int Dim>
bool validate_primitive (const Primitive< Dim > &pr, decimal_t mv=0, decimal_t ma=0, decimal_t mj=0, decimal_t myaw=0)
 Check if the max velocity magnitude is within the threshold. More...
 
template<int Dim>
bool validate_xxx (const Primitive< Dim > &pr, decimal_t max, Control::Control xxx)
 Check if the max velocity magnitude is within the threshold. More...
 
template<int Dim>
bool validate_yaw (const Primitive< Dim > &pr, decimal_t my)
 Check if the successor goes outside of the fov. More...
 
template<int Dim>
void print (const Primitive< Dim > &p)
 Print all coefficients in primitive p.
 
template<int Dim>
void print_max (const Primitive< Dim > &p)
 Print max dynamic infomation in primitive p.
 

Detailed Description

Primitive classes.

Function Documentation

◆ validate_primitive()

template<int Dim>
bool validate_primitive ( const Primitive< Dim > &  pr,
decimal_t  mv = 0,
decimal_t  ma = 0,
decimal_t  mj = 0,
decimal_t  myaw = 0 
)

Check if the max velocity magnitude is within the threshold.

Parameters
mvis the max threshold for velocity
mais the max threshold for acceleration
mjis the max threshold for jerk
myawis the max threshold for yaw

Use L1 norm for the maximum

◆ validate_xxx()

template<int Dim>
bool validate_xxx ( const Primitive< Dim > &  pr,
decimal_t  max,
Control::Control  xxx 
)

Check if the max velocity magnitude is within the threshold.

Parameters
mvis the max threshold

Use L1 norm for the maximum

◆ validate_yaw()

template<int Dim>
bool validate_yaw ( const Primitive< Dim > &  pr,
decimal_t  my 
)

Check if the successor goes outside of the fov.

Parameters
myis the value of semi-fov