Parasol Planning Library (PPL)
|
#include <WorkspacePortal.h>
Public Types | |
Local Types | |
typedef GMSPolygon | Facet |
A triangle facet. More... | |
Public Member Functions | |
Construction | |
WorkspacePortal () | |
WorkspacePortal (WorkspaceDecomposition *const _wd, const size_t _s, const size_t _t) | |
void | SetDecomposition (WorkspaceDecomposition *const _wd) |
Accessors | |
const size_t | GetSourceDescriptor () const noexcept |
const size_t | GetTargetDescriptor () const noexcept |
const WorkspaceRegion & | GetSource () const noexcept |
const WorkspaceRegion & | GetTarget () const noexcept |
double | GetWeight () const noexcept |
Get the distance between region centers through the facet midpoint. More... | |
Queries | |
const std::vector< Point3d > | FindPoints () const |
Find the set of points that are common to both source and target region. More... | |
const std::vector< const Facet * > | FindFacets () const |
Describes a connection between two workspace regions.
This is a light-weight object: it represents points and facets shared between regions, but does not store them explicitly. The shared objects are instead computed as needed.
typedef GMSPolygon WorkspacePortal::Facet |
A triangle facet.
WorkspacePortal::WorkspacePortal | ( | ) |
Default construction makes no sense for this object, but the stapl graph requires it anyway.
WorkspacePortal::WorkspacePortal | ( | WorkspaceDecomposition *const | _wd, |
const size_t | _s, | ||
const size_t | _t | ||
) |
Construct a workspace portal between a source and target region in a given workspace decomposition.
_wd | The owning decomposition. |
_s | The source region descriptor. |
_t | the Target region descriptor. |
const std::vector< const WorkspacePortal::Facet * > WorkspacePortal::FindFacets | ( | ) | const |
Find the set of facets from the source region that connect the source to the target.
const std::vector< Point3d > WorkspacePortal::FindPoints | ( | ) | const |
Find the set of points that are common to both source and target region.
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Get the distance between region centers through the facet midpoint.
void WorkspacePortal::SetDecomposition | ( | WorkspaceDecomposition *const | _wd | ) |
Change the owning decomposition. This only makes sense when we are copying/moving portals from one decomposition to another.
_wd | The new owning decomposition. |