Struct PDST::Cell

Nested Relationships

This struct is a nested type of Class PDST.

Struct Documentation

struct Cell

Cell is a Binary Space Partition.

Public Functions

inline Cell(double volume, base::RealVectorBounds bounds, unsigned int splitDimension = 0)
inline ~Cell()
void subdivide(unsigned int spaceDimension)

Subdivides this cell.

inline Cell *stab(const Eigen::Ref<Eigen::VectorXd> &projection) const

Locates the cell that this motion begins in.

inline void addMotion(Motion *motion)

Add a motion.

inline unsigned int size() const

Number of cells.

Public Members

double volume_

Volume of the cell.

unsigned int splitDimension_

Dimension along which the cell is split into smaller cells.

double splitValue_

The midpoint between the bounds_ at the splitDimension_.

Cell *left_

The left child cell (nullptr for a leaf cell)

Cell *right_

The right child cell (nullptr for a leaf cell)

base::RealVectorBounds bounds_

A bounding box for this cell.

std::vector<Motion*> motions_

The motions contained in this cell. Motions are stored only in leaf nodes.