hpp-core 7.0.0
Implement basic classes for canonical path planning for kinematic chains.
Loading...
Searching...
No Matches
hpp::core::KinodynamicDistance Class Reference

#include <hpp/core/kinodynamic-distance.hh>

Inheritance diagram for hpp::core::KinodynamicDistance:
Collaboration diagram for hpp::core::KinodynamicDistance:

Public Member Functions

virtual DistancePtr_t clone () const
const DevicePtr_trobot () const
 Get robot.
Public Member Functions inherited from hpp::core::Distance
value_type operator() (ConfigurationIn_t q1, ConfigurationIn_t q2) const
value_type operator() (NodePtr_t n1, NodePtr_t n2) const
value_type compute (ConfigurationIn_t q1, ConfigurationIn_t q2) const
value_type compute (NodePtr_t n1, NodePtr_t n2) const
virtual ~Distance ()

Static Public Member Functions

static KinodynamicDistancePtr_t create (const DevicePtr_t &robot)
static KinodynamicDistancePtr_t createFromProblem (const ProblemConstPtr_t &problem)
static KinodynamicDistancePtr_t createCopy (const KinodynamicDistancePtr_t &distance)

Protected Member Functions

 KinodynamicDistance (const DevicePtr_t &robot)
 KinodynamicDistance (const ProblemConstPtr_t &problem)
 KinodynamicDistance (const KinodynamicDistance &distance)
void init (KinodynamicDistanceWkPtr_t self)
virtual value_type impl_distance (ConfigurationIn_t q1, ConfigurationIn_t q2) const
 Derived class should implement this function.
double computeMinTime (double p1, double p2, double v1, double v2) const
Protected Member Functions inherited from hpp::core::Distance
 Distance ()
virtual value_type impl_distance (NodePtr_t n1, NodePtr_t n2) const
 HPP_SERIALIZABLE ()

Detailed Description

This class computed the Distance between two states as the minimal time required to connect this two states with a "bang-bang" trajectory, given velocity and acceleration bounds.

This time is the same as the length() of a KinodynamicPath computed between this two states by the steeringMethod::Kinodynamic.

This class require that the dimension of the extraConfigSpace is at least 6 and store the velocity and acceleration of the root.

Constructor & Destructor Documentation

◆ KinodynamicDistance() [1/3]

hpp::core::KinodynamicDistance::KinodynamicDistance(const DevicePtr_t &robot)
protected

◆ KinodynamicDistance() [2/3]

hpp::core::KinodynamicDistance::KinodynamicDistance(const ProblemConstPtr_t &problem)
protected

◆ KinodynamicDistance() [3/3]

hpp::core::KinodynamicDistance::KinodynamicDistance(const KinodynamicDistance &distance)
protected

Member Function Documentation

◆ clone()

virtual DistancePtr_t hpp::core::KinodynamicDistance::clone()const
virtual

◆ computeMinTime()

double hpp::core::KinodynamicDistance::computeMinTime(doublep1,
doublep2,
doublev1,
doublev2 ) const
protected

◆ create()

KinodynamicDistancePtr_t hpp::core::KinodynamicDistance::create(const DevicePtr_t &robot)
static

◆ createCopy()

KinodynamicDistancePtr_t hpp::core::KinodynamicDistance::createCopy(const KinodynamicDistancePtr_t &distance)
static

◆ createFromProblem()

KinodynamicDistancePtr_t hpp::core::KinodynamicDistance::createFromProblem(const ProblemConstPtr_t &problem)
static

◆ impl_distance()

virtual value_type hpp::core::KinodynamicDistance::impl_distance(ConfigurationIn_tq1,
ConfigurationIn_tq2 ) const
protectedvirtual

Derived class should implement this function.

Implements hpp::core::Distance.

◆ init()

void hpp::core::KinodynamicDistance::init(KinodynamicDistanceWkPtr_tself)
protected

◆ robot()

const DevicePtr_t & hpp::core::KinodynamicDistance::robot()const
inline

Get robot.


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