Ruckig 0.13.0
Motion Generation for Robots and Machines
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
ruckig::Calculator< DOFs, CustomVector > Class Template Reference

Interface for the main calculator and its hyperparameters. More...

#include <calculator.hpp>

Public Member Functions

template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
 Calculator ()
 
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
 Calculator (size_t dofs)
 
template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
 Calculator (size_t max_waypoints)
 
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
 Calculator (size_t dofs, size_t max_waypoints)
 
template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
 Calculator (const MemoryRequirement &memory_requirement)
 
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
 Calculator (size_t dofs, const MemoryRequirement &memory_requirement)
 
template<bool throw_error>
Result calculate (const InputParameter< DOFs, CustomVector > &input, Trajectory< DOFs, CustomVector > &trajectory, double delta_time, bool &was_interrupted)
 Calculate the time-optimal waypoint-based trajectory.
 
template<bool throw_error>
Result continue_calculation (const InputParameter< DOFs, CustomVector > &input, Trajectory< DOFs, CustomVector > &trajectory, double delta_time, bool &was_interrupted)
 Continue the trajectory calculation.
 

Public Attributes

std::optional< double > position_scale
 Invariant position scale of the underlying calculation (only in Ruckig Pro)
 
std::optional< double > time_scale
 Invariant time scale of the underlying calculation (only in Ruckig Pro)
 
TargetCalculator< DOFs, CustomVector > target_calculator
 Calculator for state-to-state trajectories.
 
WaypointsCalculator< DOFs, CustomVector > waypoints_calculator
 Calculator for trajectories with intermediate waypoints.
 

Detailed Description

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
class ruckig::Calculator< DOFs, CustomVector >

Interface for the main calculator and its hyperparameters.

The calculator exposes the position- and time-scale parameter to make Ruckig work with a wider numerical range.

Constructor & Destructor Documentation

◆ Calculator() [1/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( )
inlineexplicit

◆ Calculator() [2/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( size_t  dofs)
inlineexplicit

◆ Calculator() [3/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( size_t  max_waypoints)
inlineexplicit

◆ Calculator() [4/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( size_t  dofs,
size_t  max_waypoints 
)
inlineexplicit

◆ Calculator() [5/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D >=1), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( const MemoryRequirement memory_requirement)
inlineexplicit

◆ Calculator() [6/6]

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<size_t D = DOFs, typename std::enable_if<(D==0), int >::type = 0>
ruckig::Calculator< DOFs, CustomVector >::Calculator ( size_t  dofs,
const MemoryRequirement memory_requirement 
)
inlineexplicit

Member Function Documentation

◆ calculate()

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<bool throw_error>
Result ruckig::Calculator< DOFs, CustomVector >::calculate ( const InputParameter< DOFs, CustomVector > &  input,
Trajectory< DOFs, CustomVector > &  trajectory,
double  delta_time,
bool &  was_interrupted 
)
inline

Calculate the time-optimal waypoint-based trajectory.

◆ continue_calculation()

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
template<bool throw_error>
Result ruckig::Calculator< DOFs, CustomVector >::continue_calculation ( const InputParameter< DOFs, CustomVector > &  input,
Trajectory< DOFs, CustomVector > &  trajectory,
double  delta_time,
bool &  was_interrupted 
)
inline

Continue the trajectory calculation.

Member Data Documentation

◆ position_scale

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
std::optional<double> ruckig::Calculator< DOFs, CustomVector >::position_scale

Invariant position scale of the underlying calculation (only in Ruckig Pro)

This can be used to bring the input parameters for the internal calculation to a more friendly numerical range. More info about Ruckig's numerical range at (see https://github.com/pantor/ruckig#tests-and-numerical-stability). This parameter will divide all length units by a factor c, e.g. positions [m] ‘p’ = p / c, velocities [m/s]v' = v / c, or accelerations [m/s^2]a' = a / c`.

◆ target_calculator

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
TargetCalculator<DOFs, CustomVector> ruckig::Calculator< DOFs, CustomVector >::target_calculator

Calculator for state-to-state trajectories.

◆ time_scale

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
std::optional<double> ruckig::Calculator< DOFs, CustomVector >::time_scale

Invariant time scale of the underlying calculation (only in Ruckig Pro)

This can be used to bring the input parameters for the internal calculation to a more friendly numerical range. More info about Ruckig's numerical range at (see https://github.com/pantor/ruckig#tests-and-numerical-stability). This parameter will divide all time units by a factor c, e.g. velocities [m/s] ‘v’ = v / c, accelerations [m/s^2]a' = a / c^2, or jerks [m/s^3]j' = j / c^3`.

◆ waypoints_calculator

template<size_t DOFs, template< class, size_t > class CustomVector = StandardVector>
WaypointsCalculator<DOFs, CustomVector> ruckig::Calculator< DOFs, CustomVector >::waypoints_calculator

Calculator for trajectories with intermediate waypoints.


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