hpp-core: hpp::core::continuousValidation::IntervalValidation Class Reference

hpp-core 9.0.2 Implement basic classes for canonical path planning for kinematic chains.

Loading...
Searching...
No Matches
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
hpp::core::continuousValidation::IntervalValidation Class Referenceabstract

`#include <hpp/core/continuous-validation/interval-validation.hh>`

Inheritance diagram for hpp::core::continuousValidation::IntervalValidation:
[legend]

## Public Member Functions
virtual bool | validateConfiguration (const value_type &t, interval_t &interval, ValidationReportPtr_t &report, const pinocchio::DeviceData &data)=0
void | path (const PathPtr_t &path, bool reverse)
PathConstPtr_t | path () const
| Get path.
value_type | tolerance () const
virtual std::string | name () const =0
virtual std::ostream & | print (std::ostream &os) const =0
virtual IntervalValidationPtr_t | copy () const =0

## Protected Types
typedef boost::icl::continuous_interval< value_type > | continuous_interval
typedef boost::icl::interval_set< value_type > | interval_set

## Protected Member Functions
| IntervalValidation (value_type tolerance)
| IntervalValidation (const IntervalValidation &other)

## Protected Attributes
PathPtr_t | path_
value_type | tolerance_
bool | reverse_
bool | refine_
bool | valid_
interval_set | validInterval_

## Detailed Description

Validation of a parameter interval of a path

During path planning, some criteria need to be checked to be valid over the whole interval of definition of a path. The most common criterion is the absence of collision (implemented by derived class BodyPairCollision), but some other criteria might need to be checked. For instance the tension of the cables of a parallel cable driven robot need to remain in an interval.

This class provides a common interface for continuous validation through method validateConfiguration .

A tolerance may be provided at construction. An interval will be considered as valid if the criterion is violated by less than the tolerance. This parameter interpretation is left to the specialization designers.

## Member Typedef Documentation

## ◆ continuous_interval

typedef boost::icl::continuous_interval<value_type> hpp::core::continuousValidation::IntervalValidation::continuous_interval
| protected

## ◆ interval_set

typedef boost::icl::interval_set<value_type> hpp::core::continuousValidation::IntervalValidation::interval_set
| protected

## Constructor & Destructor Documentation

## ◆ IntervalValidation() [1/2]

hpp::core::continuousValidation::IntervalValidation::IntervalValidation | ( | value_type | tolerance | ) |
| inlineprotected

Constructor of interval validation element

Parameters

  tolerance | allowed penetration should be positive

## ◆ IntervalValidation() [2/2]

hpp::core::continuousValidation::IntervalValidation::IntervalValidation | ( | const IntervalValidation & | other | ) |
| inlineprotected

## Member Function Documentation

## ◆ copy()

virtual IntervalValidationPtr_t hpp::core::continuousValidation::IntervalValidation::copy | ( |  | ) | const
| pure virtual

Implemented in hpp::core::continuousValidation::SolidSolidCollision.

## ◆ name()

virtual std::string hpp::core::continuousValidation::IntervalValidation::name | ( |  | ) | const
| pure virtual

Implemented in hpp::core::continuousValidation::SolidSolidCollision, and hpp::core::continuousValidation::BodyPairCollision.

## ◆ path() [1/2]

PathConstPtr_t hpp::core::continuousValidation::IntervalValidation::path | ( |  | ) | const
| inline

Get path.

## ◆ path() [2/2]

void hpp::core::continuousValidation::IntervalValidation::path | ( | const PathPtr_t & | path,
|  | bool | reverse
| ) |  |
| inline

Set path to validate

Parameters

  path | path to validate,
  reverse | whether path is validated from end to beginning.

## ◆ print()

virtual std::ostream & hpp::core::continuousValidation::IntervalValidation::print | ( | std::ostream & | os | ) | const
| pure virtual

Implemented in hpp::core::continuousValidation::SolidSolidCollision, and hpp::core::continuousValidation::BodyPairCollision.

## ◆ tolerance()

value_type hpp::core::continuousValidation::IntervalValidation::tolerance | ( |  | ) | const
| inline

## ◆ validateConfiguration()

virtual bool hpp::core::continuousValidation::IntervalValidation::validateConfiguration | ( | const value_type & | t,
|  | interval_t & | interval,
|  | ValidationReportPtr_t & | report,
|  | const pinocchio::DeviceData & | data
| ) |  |
| pure virtual

Validate an interval for a given criterion

Parameters

  t | center of the interval to validate
  interval | over which the criterion should be checked,

Return values

  interval | part of the input interval that is valid,
  report | report in case of non validity of the configuration at parameter t

Parameters

  data | data resulting from forward kinematics computed at parameter t.

Implemented in hpp::core::continuousValidation::BodyPairCollision.

## Member Data Documentation

## ◆ path_

PathPtr_t hpp::core::continuousValidation::IntervalValidation::path_
| protected

## ◆ refine_

bool hpp::core::continuousValidation::IntervalValidation::refine_
| protected

## ◆ reverse_

bool hpp::core::continuousValidation::IntervalValidation::reverse_
| protected

## ◆ tolerance_

value_type hpp::core::continuousValidation::IntervalValidation::tolerance_
| protected

## ◆ valid_

bool hpp::core::continuousValidation::IntervalValidation::valid_
| protected

## ◆ validInterval_

interval_set hpp::core::continuousValidation::IntervalValidation::validInterval_
| protected

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

- include/hpp/core/continuous-validation/interval-validation.hh