Go to the documentation of this file.
43 result.
laneId = laneInterval.laneId;
61 result.
laneId = laneInterval.laneId;
71 physics::ParametricRange range;
72 if (laneInterval.start <= laneInterval.end)
74 range.minimum = laneInterval.start;
75 range.maximum = laneInterval.end;
79 range.minimum = laneInterval.end;
80 range.maximum = laneInterval.start;
95 physics::ParametricValue
104 physics::ParametricValue
167 return (laneInterval.start <= parametricOffset) && (parametricOffset <= laneInterval.end);
171 return (laneInterval.end <= parametricOffset) && (parametricOffset <= laneInterval.start);
197 return (laneInterval.start == laneInterval.end);
212 return (parametricOffset > laneInterval.end);
216 return (parametricOffset < laneInterval.end);
231 if (point.
laneId == laneInterval.laneId)
250 return (parametricOffset < laneInterval.start);
254 return (parametricOffset > laneInterval.start);
269 if (point.
laneId == laneInterval.laneId)
287 return !rangeIsOutside;
303 LaneInterval
const &neighborInterval,
304 physics::ParametricValue
const ¶metricOffset);
311 return std::fabs(laneInterval.start - laneInterval.end);
319 physics::Distance
calcLength(LaneInterval
const &laneInterval);
325 physics::Duration
calcDuration(LaneInterval
const &laneInterval);
658 LaneInterval
cutIntervalAtStart(LaneInterval
const &laneInterval, physics::ParametricValue
const &newIntervalStart);
707 LaneInterval
cutIntervalAtEnd(LaneInterval
const &laneInterval, physics::ParametricValue
const &newIntervalEnd);
718 physics::MetricRange &lengthRange,
719 physics::MetricRange &widthRange);
namespace ad
Definition: GeometryStoreItem.hpp:28
point::ENUEdge getRightProjectedENUEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as ENUEdge using projection to find the start of the edge
void getLeftProjectedEdge(LaneInterval const &laneInterval, point::ENUEdge &enuEdge)
get Left edge of the lane interval as ENUEdge using projection to find the start of the edge
void getRightProjectedEdge(LaneInterval const &laneInterval, point::ENUEdge &enuEdge)
get right edge of the lane interval as ENUEdge using projection to find the start of the edge
LaneInterval shortenIntervalFromBegin(LaneInterval const &laneInterval, physics::Distance const &distance)
shorten the LaneInterval about a given physics::Distance. Will remove at the begin of the LaneInterva...
point::ECEFEdge getRightECEFEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as ECEFEdge
bool overlapsInterval(LaneInterval const &laneInterval, physics::ParametricRange const &range)
checks if the range overlaps with the interval
Definition: LaneIntervalOperation.hpp:283
bool isRouteDirectionNegative(LaneInterval const &laneInterval)
checks if the direction of this route interval is negative in respect to the lane geometry
Definition: LaneIntervalOperation.hpp:146
physics::ParametricRange toParametricRange(route::LaneInterval const &laneInterval)
convert lane interval to ParametricRange
Definition: LaneIntervalOperation.hpp:69
LaneInterval extendIntervalFromEnd(LaneInterval const &laneInterval, physics::Distance const &distance)
extend the lane interval by moving its end position by physics::Distance
DataType ECEFBorder.
Definition: ECEFBorder.hpp:44
point::ENUEdge getLeftENUEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as ENUEdge
void getMetricRanges(LaneInterval const &laneInterval, physics::MetricRange &lengthRange, physics::MetricRange &widthRange)
get the metric ranges of the lane interval
lane::ENUBorder getENUProjectedBorder(LaneInterval const &laneInterval)
get the enu borders of this lane
restriction::SpeedLimitList getSpeedLimits(LaneInterval const &laneInterval)
get the speed limits of the lane interval
physics::Duration calcDuration(LaneInterval const &laneInterval)
calculate the Duration of the provided lane interval as duration value
DataType ParaPoint.
Definition: ParaPoint.hpp:48
point::GeoEdge getLeftProjectedGeoEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as GeoEdge using projection to find the start of the edge
physics::Distance calcLength(LaneInterval const &laneInterval)
calculate the length of the provided lane interval as physics::Distance value
LaneInterval shortenIntervalFromEnd(LaneInterval const &laneInterval, physics::Distance const &distance)
shorten the LaneInterval about a given physics::Distance. Will remove at the end of the LaneInterval
void getRightEdge(LaneInterval const &laneInterval, point::ENUEdge &enuEdge)
get right edge of the lane interval as ENUEdge
LaneInterval extendIntervalFromStart(LaneInterval const &laneInterval, physics::Distance const &distance)
extend the lane interval by moving its start position by physics::Distance
bool isAfterInterval(LaneInterval const &laneInterval, physics::ParametricValue const parametricOffset)
checks if the parametric offset is after the interval
Definition: LaneIntervalOperation.hpp:208
point::GeoEdge getLeftGeoEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as GeoEdge
LaneInterval cutIntervalAtEnd(LaneInterval const &laneInterval, physics::ParametricValue const &newIntervalEnd)
cut the LaneInterval at a given parametric point. Will remove at the end of the LaneInterval
bool isEndOfInterval(LaneInterval const &laneInterval, point::ParaPoint const &point)
checks if the point marks the end of the interval
Definition: LaneIntervalOperation.hpp:126
physics::Distance distance(BoundingSphere const &left, BoundingSphere const &right)
Computes distance between BoundingSpheres.
Definition: BoundingSphereOperation.hpp:29
bool isStartOfInterval(LaneInterval const &laneInterval, point::ParaPoint const &point)
checks if the point marks the start of the interval
Definition: LaneIntervalOperation.hpp:114
DataType LaneId.
Definition: LaneId.hpp:66
point::ENUEdge getLeftProjectedENUEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as ENUEdge using projection to find the start of the edge
bool isRouteDirectionPositive(LaneInterval const &laneInterval)
checks if the direction of this route interval is positive in respect to the lane geometry
void getLeftEdge(LaneInterval const &laneInterval, point::ENUEdge &enuEdge)
get Left edge of the lane interval as ENUEdge
point::GeoEdge getRightGeoEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as GeoEdge
point::ECEFEdge getLeftProjectedECEFEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as ECEFEdge using projection to find the start of the edge
lane::ECEFBorder getECEFBorder(LaneInterval const &laneInterval)
get the ecef borders of this lane
physics::ParametricValue getSignedDistance(LaneInterval const &laneInterval, point::ParaPoint const &first, point::ParaPoint const &second)
get the signed parametric physics::Distance between two parametric points respecting the laneInterval...
lane::ENUBorder getENUBorder(LaneInterval const &laneInterval)
get the enu borders of this lane
bool isRouteDirectionAlignedWithDrivingDirection(LaneInterval const &laneInterval)
checks if the route direction is aligned with the nominal driving direction of the lane
std::vector<::ad::map::point::GeoPoint > GeoEdge
DataType GeoEdge.
Definition: GeoEdge.hpp:42
point::GeoEdge getRightProjectedGeoEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as GeoEdge using projection to find the start of the edge
bool isBeforeInterval(LaneInterval const &laneInterval, physics::ParametricValue const parametricOffset)
checks if the parametric offset is before the interval
Definition: LaneIntervalOperation.hpp:246
LaneInterval cutIntervalAtStart(LaneInterval const &laneInterval, physics::ParametricValue const &newIntervalStart)
cut the LaneInterval at a given parametric point. Will remove at the start of the LaneInterval
std::vector<::ad::map::restriction::SpeedLimit > SpeedLimitList
DataType SpeedLimitList.
Definition: SpeedLimitList.hpp:42
physics::ParametricValue getUnsignedDistance(LaneInterval const &laneInterval, point::ParaPoint const &first, point::ParaPoint const &second)
get the unsigned parametric physics::Distance between two parametric points
point::ENUEdge getRightENUEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as ENUEdge
DataType GeoBorder.
Definition: GeoBorder.hpp:44
lane::GeoBorder getGeoBorder(LaneInterval const &laneInterval)
get the geo borders of this lane
std::vector<::ad::map::point::ECEFPoint > ECEFEdge
DataType ECEFEdge.
Definition: ECEFEdge.hpp:42
physics::ParametricValue getProjectedParametricOffsetOnNeighborLane(LaneInterval const ¤tInterval, LaneInterval const &neighborInterval, physics::ParametricValue const ¶metricOffset)
project a given parametric position (offset) to the center line of the given neighbor lane
DataType LaneInterval.
Definition: LaneInterval.hpp:51
LaneInterval extendIntervalUntilStart(LaneInterval const &laneInterval)
extend the lane interval until the start of the lane reached
::ad::physics::ParametricValue parametricOffset
Definition: ParaPoint.hpp:136
bool isWithinInterval(LaneInterval const &laneInterval, physics::ParametricValue const ¶metricOffset)
checks if the parametric offset is within the interval
Definition: LaneIntervalOperation.hpp:163
point::ParaPoint getIntervalEnd(LaneInterval const &laneInterval)
get interval end as ParaPoint
Definition: LaneIntervalOperation.hpp:58
point::ECEFEdge getRightProjectedECEFEdge(LaneInterval const &laneInterval)
get right edge of the lane interval as ECEFEdge using projection to find the start of the edge
point::ECEFEdge getLeftECEFEdge(LaneInterval const &laneInterval)
get left edge of the lane interval as ECEFEdge
LaneInterval restrictIntervalFromBegin(LaneInterval const &laneInterval, physics::Distance const &distance)
Restrict length of the LaneInterval to a given physics::Distance from start.
physics::ParametricValue calcParametricLength(LaneInterval const &laneInterval)
calculate the length of the provided lane interval as parametric value
Definition: LaneIntervalOperation.hpp:309
DataType ENUBorder.
Definition: ENUBorder.hpp:44
bool isDegenerated(LaneInterval const &laneInterval)
checks if the interval is degenerated
Definition: LaneIntervalOperation.hpp:195
std::vector<::ad::map::point::ENUPoint > ENUEdge
DataType ENUEdge.
Definition: ENUEdge.hpp:42
point::ParaPoint getIntervalStart(LaneInterval const &laneInterval)
class defining a route interval with one lane
Definition: LaneIntervalOperation.hpp:40
::ad::map::lane::LaneId laneId
Definition: ParaPoint.hpp:125
LaneInterval extendIntervalUntilEnd(LaneInterval const &laneInterval)
extend the lane interval until the end of the lane reached