All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends
ompl::control::GridDecomposition Class Reference

A GridDecomposition is a Decomposition implemented using a grid. More...

#include <GridDecomposition.h>

Inheritance diagram for ompl::control::GridDecomposition:

Public Member Functions

 GridDecomposition (unsigned int len, unsigned int dim, const base::RealVectorBounds &b)
 Constructor. Creates a GridDecomposition as a hypercube with a given dimension, side length, and bounds. The cells of the hypercube are referenced by integer coordinates of the form $(r_1,\ldots,r_k)$, where $ 0 \leq r_i < \texttt{len}$.
 
virtual double getRegionVolume (unsigned int)
 Returns the volume of a given region in this Decomposition.
 
virtual void getNeighbors (unsigned int rid, std::vector< unsigned int > &neighbors) const
 Stores a given region's neighbors into a given vector.
 
virtual int locateRegion (const base::State *s) const
 Returns the index of the region containing a given State. Most often, this is obtained by first calling project(). Returns -1 if no region contains the State.
 
virtual void sampleFromRegion (unsigned int rid, RNG &rng, std::vector< double > &coord) const
 Samples a projected coordinate from a given region.
 
- Public Member Functions inherited from ompl::control::Decomposition
 Decomposition (unsigned int dim, const base::RealVectorBounds &b, unsigned int nreg=0)
 Constructor. Creates a Decomposition with a given dimension and a given set of bounds. Accepts as an optional argument a given number of regions.
 
virtual unsigned int getNumRegions () const
 Returns the number of regions in this Decomposition.
 
virtual unsigned int getDimension () const
 Returns the dimension of this Decomposition.
 
virtual const
base::RealVectorBounds
getBounds () const
 Returns the bounds of this Decomposition.
 
virtual void project (const base::State *s, std::vector< double > &coord) const =0
 Project a given State to a set of coordinates in R^k, where k is the dimension of this Decomposition.
 
virtual void sampleFullState (const base::StateSamplerPtr &sampler, const std::vector< double > &coord, base::State *s) const =0
 Samples a State using a projected coordinate and a StateSampler.
 

Protected Member Functions

virtual const
base::RealVectorBounds
getRegionBounds (unsigned int rid) const
 Helper method to return the bounds of a given region.
 
void regionToGridCoord (unsigned int rid, std::vector< unsigned int > &coord) const
 Converts a given region to a coordinate in the grid.
 
unsigned int gridCoordToRegion (const std::vector< unsigned int > &coord) const
 Converts the given grid coordinate to its corresponding region ID.
 
unsigned int coordToRegion (const std::vector< double > &coord) const
 Converts a decomposition space coordinate to the ID of the region that contains iit.
 
void coordToGridCoord (const std::vector< double > &coord, std::vector< unsigned int > &gridCoord) const
 Converts a decomposition space coordinate to a grid coordinate.
 
void computeGridNeighbors (unsigned int rid, std::vector< unsigned int > &neighbors) const
 Computes the neighbors of the given region in a n-dimensional grid.
 
void computeGridNeighborsSub (const std::vector< unsigned int > &coord, std::vector< unsigned int > &neighbors, unsigned int dim, std::vector< unsigned int > &candidate) const
 
- Protected Member Functions inherited from ompl::control::Decomposition
virtual void setNumRegions (unsigned int n)
 

Protected Attributes

unsigned int length_
 
double cellVolume_
 
boost::unordered_map< int,
boost::shared_ptr
< base::RealVectorBounds > > 
regToBounds_
 
- Protected Attributes inherited from ompl::control::Decomposition
unsigned int numRegions_
 
unsigned int dimension_
 
base::RealVectorBounds bounds_
 

Detailed Description

A GridDecomposition is a Decomposition implemented using a grid.

Definition at line 53 of file GridDecomposition.h.

Member Function Documentation

void ompl::control::GridDecomposition::computeGridNeighborsSub ( const std::vector< unsigned int > &  coord,
std::vector< unsigned int > &  neighbors,
unsigned int  dim,
std::vector< unsigned int > &  candidate 
) const
protected

Recursive subroutine for grid neighbor computation

Definition at line 155 of file GridDecomposition.cpp.


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