GlobalTrajectory Class Reference

#include <armarx/navigation/core/Trajectory.h>

Public Types

using Indices = std::vector< std::size_t >
 

Public Member Functions

Indices allConnectedPointsInRange (std::size_t idx, float radius) const
 get all points within a certain radius that are directly connected to idx More...
 
float duration (core::VelocityInterpolation interpolation) const
 
Projection getProjection (const Position &point, const VelocityInterpolation &velocityInterpolation) const
 
float getRemainingDistance (const Position &point) const
 Project point onto the trajectory and evaluate the remaining distance from there on. More...
 
float getRemainingDuration (const Position &point, float linearVelocity=400, float angularVelocity=0.5) const
 Project point onto the trajectory and evaluate the remaining duration from there on. More...
 
std::pair< GlobalTrajectory, bool > getSubTrajectory (const Position &point, const float distance) const
 Project point onto the trajectory and return a new trajectory along the old one from that point for the specified distance. More...
 
 GlobalTrajectory ()=default
 
 GlobalTrajectory (const std::vector< GlobalTrajectoryPoint > &points)
 
bool hasMaxDistanceBetweenWaypoints (float maxDistance) const
 
bool isValid () const noexcept
 
float length () const
 
std::vector< GlobalTrajectoryPoint > & mutablePoints ()
 
const std::vector< GlobalTrajectoryPoint > & points () const
 
std::vector< Poseposes () const noexcept
 
std::vector< Positionpositions () const noexcept
 
GlobalTrajectory resample (float eps) const
 
void setMaxVelocity (float maxVelocity)
 

Static Public Member Functions

static GlobalTrajectory FromPath (const Path &path, const std::vector< float > &velocity)
 
static GlobalTrajectory FromPath (const Path &path, float velocity)
 Note: the velocity will not be set! More...
 
static GlobalTrajectory FromPath (const Pose &start, const Positions &waypoints, const Pose &goal, const std::vector< float > &velocity)
 
static GlobalTrajectory FromPath (const Pose &start, const Positions &waypoints, const Pose &goal, float velocity)
 Note: the velocity will not be set! More...
 

Detailed Description

Definition at line 70 of file Trajectory.h.

Member Typedef Documentation

◆ Indices

using Indices = std::vector<std::size_t>

Definition at line 149 of file Trajectory.h.

Constructor & Destructor Documentation

◆ GlobalTrajectory() [1/2]

GlobalTrajectory ( )
default
+ Here is the caller graph for this function:

◆ GlobalTrajectory() [2/2]

GlobalTrajectory ( const std::vector< GlobalTrajectoryPoint > &  points)
inline

Definition at line 75 of file Trajectory.h.

Member Function Documentation

◆ allConnectedPointsInRange()

GlobalTrajectory::Indices allConnectedPointsInRange ( std::size_t  idx,
float  radius 
) const

get all points within a certain radius that are directly connected to idx

Returns
the list without idx

Definition at line 846 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ duration()

float duration ( core::VelocityInterpolation  interpolation) const

Definition at line 802 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ FromPath() [1/4]

GlobalTrajectory FromPath ( const Path path,
const std::vector< float > &  velocity 
)
static

Definition at line 423 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ FromPath() [2/4]

GlobalTrajectory FromPath ( const Path path,
float  velocity 
)
static

Note: the velocity will not be set!

Definition at line 417 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FromPath() [3/4]

GlobalTrajectory FromPath ( const Pose start,
const Positions waypoints,
const Pose goal,
const std::vector< float > &  velocity 
)
static

Definition at line 484 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ FromPath() [4/4]

GlobalTrajectory FromPath ( const Pose start,
const Positions waypoints,
const Pose goal,
float  velocity 
)
static

Note: the velocity will not be set!

Definition at line 429 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ getProjection()

Projection getProjection ( const Position point,
const VelocityInterpolation velocityInterpolation 
) const

Definition at line 245 of file Trajectory.cpp.

+ Here is the caller graph for this function:

◆ getRemainingDistance()

float getRemainingDistance ( const Position point) const

Project point onto the trajectory and evaluate the remaining distance from there on.

Parameters
pointcurrent location, from which on to measure
Returns
Remaining translation along the trajectory in mm (ignoring rotations!)

Definition at line 332 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ getRemainingDuration()

float getRemainingDuration ( const Position point,
float  linearVelocity = 400,
float  angularVelocity = 0.5 
) const

Project point onto the trajectory and evaluate the remaining duration from there on.

Parameters
pointcurrent location, from which on to measure
linearVelocityvelocity for translations in mm/s
angularVelocityvelocity for rotations in rad/s
Returns
Remaining translation along the trajectory in s

Definition at line 354 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ getSubTrajectory()

std::pair< GlobalTrajectory, bool > getSubTrajectory ( const Position point,
const float  distance 
) const

Project point onto the trajectory and return a new trajectory along the old one from that point for the specified distance.

Returns
The subtrajectory and whether the subtrajectory ends at the same point, as this trajectory

Definition at line 289 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasMaxDistanceBetweenWaypoints()

bool hasMaxDistanceBetweenWaypoints ( float  maxDistance) const

Definition at line 772 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ isValid()

bool isValid ( ) const
noexcept

Definition at line 837 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ length()

float length ( ) const

Definition at line 740 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mutablePoints()

std::vector< GlobalTrajectoryPoint > & mutablePoints ( )

Definition at line 796 of file Trajectory.cpp.

+ Here is the caller graph for this function:

◆ points()

const std::vector< GlobalTrajectoryPoint > & points ( ) const

Definition at line 790 of file Trajectory.cpp.

+ Here is the caller graph for this function:

◆ poses()

std::vector< Pose > poses ( ) const
noexcept

Definition at line 402 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ positions()

std::vector< Eigen::Vector3f > positions ( ) const
noexcept

Definition at line 388 of file Trajectory.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ resample()

GlobalTrajectory resample ( float  eps) const

Definition at line 639 of file Trajectory.cpp.

+ Here is the call graph for this function:

◆ setMaxVelocity()

void setMaxVelocity ( float  maxVelocity)

Definition at line 761 of file Trajectory.cpp.


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