Tscpolytope Struct Reference

Detailed Description

The area of influence of a chart is bounded by a polytope. In this case the polytope is bounded by a set of faces but no vertex is explicitlly stored. This way we save memory and complexity. The drawback is that we have to store all the faces defining the polytope (we can not detect useless faces) and the bounding boxes are less tight. Moreover all the charts that at any point intersected with the current chart will be keept as neighbours, even if from a given time they are no neighbours any more. One solution for this is to define a full Tpolytope (this has vertices and a minimum set of faces) from the simple polytope and then keep the surviving faces and the tighter bounding box.

The simple polytope is only usefull in the AtlasRRT combination.

Todo:
Implement the conversions between Tpolytope and Tspolytope.
See also
chart.h,chart.c.

Definition at line 63 of file scpolytope.h.

Data Fields

unsigned int k
 
double r
 
double sr
 
double lsr
 
double msr
 
double v
 
unsigned int nFaces
 
unsigned int maxFaces
 
double ** face
 
unsigned int * ID
 

Field Documentation

◆ k

unsigned int Tscpolytope::k

Dimension of the feasible velocity space. Can be lower than the dimension of the manifold in the presence of kino-constraints. If so, the 'k' here is lower than the 'k' in the corresponding chart. Parameter here only use the first components of the tangent space (the rest, used in chart. are assumed to be zero).

Definition at line 64 of file scpolytope.h.

Referenced by CopySPolytope(), CutSPolytope(), CutSPolytopeWithFace(), DetermineSPolytopeNeighbour(), EnlargeSPolytope(), GetSPolytopeDim(), GetSPolytopeFace(), InitEmptySPolytope(), InsideSPolytope(), LoadSPolytope(), RandomPointInSPolytope(), SaveSPolytope(), SPolytopeMaxVolume(), SPolytopeMemSize(), SPolytopeRandomPointOnBoundary(), and SPolytopeVolume().

◆ r

double Tscpolytope::r

Radius around p (in tangent space) where the linearization holds.

Definition at line 70 of file scpolytope.h.

Referenced by CopySPolytope(), CutSPolytope(), DetermineSPolytopeNeighbour(), GetSPolytopeRadius(), InitEmptySPolytope(), LoadSPolytope(), and SaveSPolytope().

◆ sr

◆ lsr

double Tscpolytope::lsr

Lower bound for the sampling radius. This minimum ensures that the sampling area always includes the applicability area of a chart. This ensures probabilistic completeness.

Definition at line 73 of file scpolytope.h.

Referenced by CopySPolytope(), InitEmptySPolytope(), LoadSPolytope(), RandomPointInSPolytope(), SaveSPolytope(), and SPolytopeDecreaseSamplingRadius().

◆ msr

double Tscpolytope::msr

◆ v

double Tscpolytope::v

◆ nFaces

◆ maxFaces

unsigned int Tscpolytope::maxFaces

◆ face

◆ ID

unsigned int* Tscpolytope::ID