A class describing a prolate hyperspheroid, a special symmetric type of n-dimensional ellipse, for use in direct informed sampling for problems seeking to minimize path length. More...
#include <ompl/util/ProlateHyperspheroid.h>
Public Member Functions | |
ProlateHyperspheroid (unsigned int n, const double focus1[], const double focus2[]) | |
The description of an n-dimensional prolate hyperspheroid. | |
void | setTransverseDiameter (double transverseDiameter) |
Set the transverse diameter of the PHS. | |
void | transform (const double sphere[], double phs[]) const |
Transform a point from a sphere to PHS. The return variable phs is expected to already exist. | |
bool | isInPhs (const double point[]) const |
Check if the given point lies in the PHS. | |
bool | isOnPhs (const double point[]) const |
Check if the given point lies on the PHS. | |
unsigned int | getPhsDimension () const |
The dimension of the PHS. | |
double | getPhsMeasure () const |
The measure of the PHS. | |
double | getPhsMeasure (double tranDiam) const |
The measure of the PHS for a given transverse diameter. | |
double | getMinTransverseDiameter () const |
The minimum transverse diameter of the PHS, i.e., the distance between the foci. | |
double | getPathLength (const double point[]) const |
Calculate length of a line that originates from one focus, passes through the given point, and terminates at the other focus, i.e., the transverse diameter of the ellipse on which the given sample lies. | |
unsigned int | getDimension () const |
The state dimension of the PHS. | |
Detailed Description
A class describing a prolate hyperspheroid, a special symmetric type of n-dimensional ellipse, for use in direct informed sampling for problems seeking to minimize path length.
- J. D. Gammell, T. D. Barfoot, S. S. Srinivasa, "Informed sampling for asymptotically optimal path planning."
- IEEE Transactions on Robotics (T-RO), 34(4): 966-984, Aug. 2018. DOI: TRO.2018.2830331. arXiv: 1706.06454 [cs.RO]. Illustration video. Short description video.
Definition at line 60 of file ProlateHyperspheroid.h.
Constructor & Destructor Documentation
◆ ProlateHyperspheroid()
ompl::ProlateHyperspheroid::ProlateHyperspheroid | ( | unsigned int | n, |
const double | focus1[], | ||
const double | focus2[] ) |
The description of an n-dimensional prolate hyperspheroid.
Definition at line 87 of file ProlateHyperspheroid.cpp.
Member Function Documentation
◆ getDimension()
unsigned int ompl::ProlateHyperspheroid::getDimension | ( | ) | const |
The state dimension of the PHS.
Definition at line 201 of file ProlateHyperspheroid.cpp.
◆ getMinTransverseDiameter()
double ompl::ProlateHyperspheroid::getMinTransverseDiameter | ( | ) | const |
The minimum transverse diameter of the PHS, i.e., the distance between the foci.
Definition at line 190 of file ProlateHyperspheroid.cpp.
◆ getPathLength()
double ompl::ProlateHyperspheroid::getPathLength | ( | const double | point[] | ) | const |
Calculate length of a line that originates from one focus, passes through the given point, and terminates at the other focus, i.e., the transverse diameter of the ellipse on which the given sample lies.
Definition at line 195 of file ProlateHyperspheroid.cpp.
◆ getPhsDimension()
unsigned int ompl::ProlateHyperspheroid::getPhsDimension | ( | ) | const |
The dimension of the PHS.
Definition at line 167 of file ProlateHyperspheroid.cpp.
◆ getPhsMeasure() [1/2]
double ompl::ProlateHyperspheroid::getPhsMeasure | ( | ) | const |
The measure of the PHS.
Definition at line 172 of file ProlateHyperspheroid.cpp.
◆ getPhsMeasure() [2/2]
double ompl::ProlateHyperspheroid::getPhsMeasure | ( | double | tranDiam | ) | const |
The measure of the PHS for a given transverse diameter.
Definition at line 185 of file ProlateHyperspheroid.cpp.
◆ isInPhs()
bool ompl::ProlateHyperspheroid::isInPhs | ( | const double | point[] | ) | const |
Check if the given point lies in the PHS.
Definition at line 145 of file ProlateHyperspheroid.cpp.
◆ isOnPhs()
bool ompl::ProlateHyperspheroid::isOnPhs | ( | const double | point[] | ) | const |
Check if the given point lies on the PHS.
Definition at line 156 of file ProlateHyperspheroid.cpp.
◆ setTransverseDiameter()
void ompl::ProlateHyperspheroid::setTransverseDiameter | ( | double | transverseDiameter | ) |
Set the transverse diameter of the PHS.
Definition at line 109 of file ProlateHyperspheroid.cpp.
◆ transform()
void ompl::ProlateHyperspheroid::transform | ( | const double | sphere[], |
double | phs[] ) const |
Transform a point from a sphere to PHS. The return variable phs is expected to already exist.
Definition at line 132 of file ProlateHyperspheroid.cpp.
The documentation for this class was generated from the following files:
- ompl/util/ProlateHyperspheroid.h
- ompl/util/src/ProlateHyperspheroid.cpp