6 : lanelets_{std::move(lanelets)},
13 centerline = std::make_shared<CompoundLineString3d>(
21 auto polygon = std::atomic_load_explicit(&
polygon_, std::memory_order_acquire);
24 std::atomic_store_explicit(&
polygon_,
polygon, std::memory_order_release);
CompoundPolygon3d polygon() const
Get the bounding polygon around all lanelets. Result is cached.
LaneletSequenceData(ConstLanelets lanelets)
Constructs a new, valid LaneletData object.
A Compound linestring in 3d (returns Point3d)
auto transform(Iterator begin, Iterator end, const Func f)
std::vector< CompoundLineString3d > CompoundLineStrings3d
const ConstLanelets & lanelets() const
std::shared_ptr< CompoundLineString3d > centerline_
combined centerline
CompoundLineString3d centerline() const
computes the centerline. Result is cached
CompoundLineString3d invert() const noexcept
create a new, inverted linestring from this one
Combines multiple linestrings to one polygon in 3d.
const CompoundLineString3d leftBound_
< Cached data
RegulatoryElementConstPtrs regulatoryElements() const
get a list of all regulatory elements that affect one of the lanelets
auto concatenate(ContainerT &&c)
overload assuming that c is a container of containers. The return type will be the type of the inner ...
std::vector< RegulatoryElementConstPtr > RegulatoryElementConstPtrs
const ConstLanelets lanelets_
std::shared_ptr< CompoundPolygon3d > polygon_
combined polygon
const CompoundLineString3d rightBound_
std::vector< ConstLanelet > ConstLanelets