Implements a distribution as required by Informed RRT*.
More...
#include <RobotComponents/components/MotionPlanning/util/Samplers.h>
|
| template<class T = std::size_t> |
| T | getDimensionality () const |
| | Returns the distributions dimensionality. More...
|
| |
| RealType | getVolume () const |
| | Returns the distributions volume. More...
|
| |
| bool | isInBounds (const RealType *first) const |
| | Returns whether [first, first + dimensionality) is a point contained by the prolate hyper spheroid and the cuboid. More...
|
| |
| template<class Generator > |
| void | operator() (RealType *first, Generator &gen) |
| | Fills [first, first + dimensionality) with a uniform sample of the intersection of the prolate hyper spheroid and cuboid space. More...
|
| |
| bool | setMaximalCost (RealType max) |
| | Sets the maximal cost to max if the current maximal cost is higher. More...
|
| |
| template<class ValIter , class BoundsIter > |
| | UniformInformedProlateSpheroidDistribution (BoundsIter boundsFirst, BoundsIter boundsLast, ValIter focalAFirst, ValIter focalALast, ValIter focalBFirst) |
| | Constructs a uniform informed distribution containing a cuboid distribution (with the bounds [boundsFirst, boundsLast)) and a prolate hyper spheroid distribution (with the focal points [focalAFirst, focalALast) and [focalBFirst, focalBFirst + distance(focalAFirst, focalALast))). More...
|
| |
| template<class ValIter , class BoundsIter > |
| | UniformInformedProlateSpheroidDistribution (BoundsIter boundsFirst, BoundsIter boundsLast, ValIter focalAFirst, ValIter focalALast, ValIter focalBFirst, const std::vector< RealType > &rotationMatrix) |
| | Constructs a uniform informed distribution containing a cuboid distribution (with the bounds [boundsFirst, boundsLast)) and a prolate hyper spheroid distribution (with the focal points [focalAFirst, focalALast) and [focalBFirst, focalBFirst + distance(focalAFirst, focalALast)) and the given rotation matrix). More...
|
| |
template<class RealType = float>
class armarx::UniformInformedProlateSpheroidDistribution< RealType >
Implements a distribution as required by Informed RRT*.
(as described in DOI>10.1109/IROS.2014.6942976)
Definition at line 650 of file Samplers.h.
◆ UniformInformedProlateSpheroidDistribution() [1/2]
Constructs a uniform informed distribution containing a cuboid distribution (with the bounds [boundsFirst, boundsLast)) and a prolate hyper spheroid distribution (with the focal points [focalAFirst, focalALast) and [focalBFirst, focalBFirst + distance(focalAFirst, focalALast)) and the given rotation matrix).
- Parameters
-
| boundsFirst | The bounds for the first dimension. |
| boundsLast | One past the bounds for the last dimension. |
| focalAFirst | The first value of the first focal point. |
| focalALast | One past the last value of the first focal point. |
| focalBFirst | The first value of the second focal point. |
| rotationMatrix | The used rotation matrix (the values should be ordered to be conform with eigens mapping of matrices to vectors. (as defined by Eigen::Map<Eigen::Matrix<RealType, dimensionality, dimensionality>>) |
Definition at line 666 of file Samplers.h.
◆ UniformInformedProlateSpheroidDistribution() [2/2]
Constructs a uniform informed distribution containing a cuboid distribution (with the bounds [boundsFirst, boundsLast)) and a prolate hyper spheroid distribution (with the focal points [focalAFirst, focalALast) and [focalBFirst, focalBFirst + distance(focalAFirst, focalALast))).
- Parameters
-
| boundsFirst | The bounds for the first dimension. |
| boundsLast | One past the bounds for the last dimension. |
| focalAFirst | The first value of the first focal point. |
| focalALast | One past the last value of the first focal point. |
| focalBFirst | The first value of the second focal point. |
Definition at line 693 of file Samplers.h.
◆ getDimensionality()
| T getDimensionality |
( |
| ) |
const |
|
inline |
Returns the distributions dimensionality.
- Returns
- The distributions dimensionality.
Definition at line 789 of file Samplers.h.
◆ getVolume()
| RealType getVolume |
( |
| ) |
const |
|
inline |
Returns the distributions volume.
It is the minimum of the prolate hyper spheroid's and the cuboid's volumes.
- Returns
- The distributions volume.
Definition at line 778 of file Samplers.h.
◆ isInBounds()
| bool isInBounds |
( |
const RealType * |
first | ) |
const |
|
inline |
Returns whether [first, first + dimensionality) is a point contained by the prolate hyper spheroid and the cuboid.
- Parameters
-
| first | The first value of the point to check. |
- Returns
- Whether [first, first + dimensionality) is a point contained by the prolate hyper spheroid and the cuboid.
Definition at line 800 of file Samplers.h.
◆ operator()()
| void operator() |
( |
RealType * |
first, |
|
|
Generator & |
gen |
|
) |
| |
|
inline |
Fills [first, first + dimensionality) with a uniform sample of the intersection of the prolate hyper spheroid and cuboid space.
- Parameters
-
| first | The first value to fill. |
| gen | The used generator. |
Definition at line 715 of file Samplers.h.
◆ setMaximalCost()
| bool setMaximalCost |
( |
RealType |
max | ) |
|
|
inline |
Sets the maximal cost to max if the current maximal cost is higher.
- Parameters
-
| max | The new maximal cost to set. |
- Returns
- Whether the new cost was lower than the old cost.
Definition at line 749 of file Samplers.h.
◆ cMax
The current maximal cost.
Definition at line 817 of file Samplers.h.
◆ cuboidDistribution
The cuboid's distribution.
Definition at line 813 of file Samplers.h.
◆ spheroidDistribution
The prolate hyper spheroid's distribution.
Definition at line 809 of file Samplers.h.
The documentation for this class was generated from the following file:
- RobotComponents/components/MotionPlanning/util/Samplers.h