Class ProjectionFactory

Class Documentation

class ProjectionFactory

Public Functions

ProjectionFactory() = default
ProjectionPtr makeProjection(const base::SpaceInformationPtr &Bundle, const base::SpaceInformationPtr &Base)

Guess projection(s) between two SpaceInformationPtr Bundle and Base.

ProjectionPtr makeProjection(const base::SpaceInformationPtr &Bundle)

Protected Functions

ProjectionPtr makeProjection(const base::StateSpacePtr &BundleSpace, const base::StateSpacePtr &BaseSpace, bool areValidityCheckersEquivalent)
ProjectionPtr makeProjection(const base::StateSpacePtr &BundleSpace)
ProjectionType identifyProjectionType(const base::StateSpacePtr &BundleSpace, const base::StateSpacePtr &BaseSpace)

Guess the projection type from the list of projections in ompl::multilevel::ProjectionTypes.

bool isMapping_Identity(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if the mapping is an identity mapping.

bool isMapping_EmptyProjection(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if the mapping is an empty projection.

bool isMapping_RN_to_RM(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathbb{R}^N \) to \( \mathbb{R}^M \).

bool isMapping_SE2_to_R2(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(2) \) to \( \mathbb{R}^2 \).

bool isMapping_SE2RN_to_R2(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(2)\times \mathbb{R}^N \) to \( \mathbb{R}^2 \).

bool isMapping_SE2RN_to_SE2(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(2)\times \mathbb{R}^N \) to \( \mathrm{SE}(2) \).

bool isMapping_SE2RN_to_SE2RM(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(2)\times \mathbb{R}^N \) to \( \mathrm{SE}(2)\times \mathbb{R}^M \).

bool isMapping_SE3_to_R3(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(3) \) to \( \mathbb{R}^3 \).

bool isMapping_SE3RN_to_R3(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(3)\times \mathbb{R}^N \) to \( \mathbb{R}^3 \).

bool isMapping_SE3RN_to_SE3(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(3)\times \mathbb{R}^N \) to \( \mathrm{SE}(3) \).

bool isMapping_SE3RN_to_SE3RM(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SE}(3)\times \mathbb{R}^N \) to \( \mathrm{SE}(3)\times \mathbb{R}^M \).

bool isMapping_SO2RN_to_SO2(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SO}(2)\times \mathbb{R}^N \) to \( \mathrm{SO}(2) \).

bool isMapping_SO2RN_to_SO2RM(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SO}(2)\times \mathbb{R}^N \) to \( \mathrm{SO}(2)\times \mathbb{R}^M \).

bool isMapping_SO2N_to_SO2M(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SO}^N(2) \) to \( \mathrm{SO}^M(2) \).

bool isMapping_SO3RN_to_SO3(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SO}(3)\times \mathbb{R}^N \) to \( \mathrm{SO}(3) \).

bool isMapping_SO3RN_to_SO3RM(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathrm{SO}(3)\times \mathbb{R}^N \) to \( \mathrm{SO}(3)\times \mathbb{R}^M \).

bool isMapping_RNSO2_to_RN(const base::StateSpacePtr&, const base::StateSpacePtr&)

Check if mapping is \( \mathbb{R}^N \times \mathrm{SO}(2) \) to \( \mathbb{R}^N \).

bool isMapping_XRN_to_XRM(const base::StateSpacePtr&, const base::StateSpacePtr&, const base::StateSpaceType)

Check if mapping is \( X\times \mathbb{R}^N \) to \( X \times \mathbb{R}^M \) whereby \( X = \{\mathrm{SO}(2),\mathrm{SO}(3),\mathrm{SE}(2),\mathrm{SE}(3)\} \).

bool isMapping_XRN_to_X(const base::StateSpacePtr&, const base::StateSpacePtr&, const base::StateSpaceType)

Check if mapping is \( X\times \mathbb{R}^N \) to \( X \) whereby \( X = \{\mathrm{SO}(2),\mathrm{SO}(3),\mathrm{SE}(2),\mathrm{SE}(3)\} \).

int GetNumberOfComponents(const base::StateSpacePtr &space)

Estimate number of components on state space.