maliput
|
A BranchPoint is a node in the network of a RoadGeometry at which Lanes connect to one another.
A BranchPoint is a collection of LaneEnds specifying the Lanes (and, in particular, which ends of the Lanes) are connected at the BranchPoint.
LaneEnds participating in a BranchPoint are grouped into two sets, arbitrarily named "A-side" and "B-side". LaneEnds on the same "side" have coincident into-the-lane tangent vectors, which are anti-parallel to those of LaneEnds on the other side.
#include <include/maliput/api/branch_point.h>
Public Member Functions | |
virtual | ~BranchPoint ()=default |
BranchPointId | id () const |
Returns the persistent identifier. More... | |
const RoadGeometry * | road_geometry () const |
Returns the RoadGeometry to which this BranchPoint belongs. More... | |
const LaneEndSet * | GetConfluentBranches (const LaneEnd &end) const |
Returns the set of LaneEnds on the same side as the given end , e.g., the LaneEnds merging with the given end . More... | |
const LaneEndSet * | GetOngoingBranches (const LaneEnd &end) const |
Returns the set of LaneEnds on the other side from the given end , e.g., the LaneEnds which end flows into. More... | |
std::optional< LaneEnd > | GetDefaultBranch (const LaneEnd &end) const |
Returns the default ongoing branch (if any) for the given end . More... | |
const LaneEndSet * | GetASide () const |
Returns the set of LaneEnds grouped together on the "A-side". More... | |
const LaneEndSet * | GetBSide () const |
Returns the set of LaneEnds grouped together on the "B-side". More... | |
Protected Member Functions | |
BranchPoint ()=default | |
|
virtualdefault |
Reimplemented in BranchPoint.
|
protecteddefault |
const LaneEndSet* GetASide | ( | ) | const |
Returns the set of LaneEnds grouped together on the "A-side".
const LaneEndSet* GetBSide | ( | ) | const |
Returns the set of LaneEnds grouped together on the "B-side".
const LaneEndSet* GetConfluentBranches | ( | const LaneEnd & | end | ) | const |
Returns the set of LaneEnds on the same side as the given end
, e.g., the LaneEnds merging with the given end
.
The returned set includes the given end
.
end
must be connected to the BranchPoint. Returns the default ongoing branch (if any) for the given end
.
This typically represents what would be considered "continuing
through-traffic" from end
(e.g., as opposed to a branch executing a turn).
If end
has no default-branch at this BranchPoint, the return value will be std::nullopt.
end
must be connected to the BranchPoint. const LaneEndSet* GetOngoingBranches | ( | const LaneEnd & | end | ) | const |
Returns the set of LaneEnds on the other side from the given end
, e.g., the LaneEnds which end
flows into.
end
must be connected to the BranchPoint. BranchPointId id | ( | ) | const |
Returns the persistent identifier.
const RoadGeometry* road_geometry | ( | ) | const |
Returns the RoadGeometry to which this BranchPoint belongs.