#include <Road.h>
Public 成员函数 | |
element::DirectedPoint | GetDirectedPointIn (const double s) const |
Returns a directed point on the center of the road (lane 0), with the corresponding laneOffset and elevation records applied, on distance "s". | |
element::DirectedPoint | GetDirectedPointInNoLaneOffset (const double s) const |
Returns a directed point on the center of the road (lane 0), with the corresponding laneOffset and elevation records applied, on distance "s". | |
const geom::CubicPolynomial & | GetElevationOn (const double s) const |
LaneSection * | GetEndSection (LaneId id) |
Get the end section (from road coordinates s) given a lane id | |
RoadId | GetId () const |
template<typename T > | |
const T * | GetInfo (const double s) const |
template<typename T > | |
std::vector< const T * > | GetInfos () const |
template<typename T > | |
std::vector< const T * > | GetInfosInRange (const double min_s, const double max_s) const |
JuncId | GetJunctionId () const |
Lane & | GetLaneByDistance (double s, LaneId lane_id) |
const Lane & | GetLaneByDistance (double s, LaneId lane_id) const |
Lane & | GetLaneById (SectionId section_id, LaneId lane_id) |
const Lane & | GetLaneById (SectionId section_id, LaneId lane_id) const |
std::map< LaneId, const Lane * > | GetLanesAt (const double s) const |
Get all lanes at a given s | |
std::vector< Lane * > | GetLanesByDistance (double s) |
Get all lanes from all lane sections in a specific s | |
std::vector< const Lane * > | GetLanesByDistance (double s) const |
LaneSection & | GetLaneSectionById (SectionId id) |
const LaneSection & | GetLaneSectionById (SectionId id) const |
auto | GetLaneSections () const |
auto | GetLaneSectionsAt (const double s) |
auto | GetLaneSectionsAt (const double s) const |
double | GetLength () const |
const MapData * | GetMap () const |
std::string | GetName () const |
const std::pair< const Lane *, double > | GetNearestLane (const double s, const geom::Location &loc, uint32_t type=static_cast< uint32_t >(Lane::LaneType::Any)) const |
Returns a pointer to the nearest lane, given s relative to Road and a location | |
const std::pair< double, double > | GetNearestPoint (const geom::Location &loc) const |
Returns a pair containing: | |
Lane * | GetNextLane (const double s, const LaneId lane_id) |
std::vector< Road * > | GetNexts () const |
RoadId | GetPredecessor () const |
Lane * | GetPrevLane (const double s, const LaneId lane_id) |
std::vector< Road * > | GetPrevs () const |
LaneSection * | GetStartSection (LaneId id) |
Get the start section (from road coordinates s) given a lane id | |
RoadId | GetSuccessor () const |
bool | IsJunction () const |
Road ()=default | |
double | UpperBound (double s) const |
Return the upper bound "s", i.e., the end distance of the lane section at s (clamped at road's length). | |
静态 Private 成员函数 | |
template<typename MultiMapT > | |
static auto | GetLessEqualRange (MultiMapT &map, double s) |
Private 属性 | |
RoadId | _id { 0 } |
InformationSet | _info |
bool | _is_junction { false } |
JuncId | _junction_id { -1 } |
LaneSectionMap | _lane_sections |
double | _length { 0.0 } |
MapData * | _map_data { nullptr } |
std::string | _name |
std::vector< Road * > | _nexts |
RoadId | _predecessor { 0 } |
std::vector< Road * > | _prevs |
RoadId | _successor { 0 } |
friend | MapBuilder |
额外继承的成员函数 | |
Private 成员函数 继承自 carla::MovableNonCopyable | |
MovableNonCopyable ()=default | |
MovableNonCopyable (const MovableNonCopyable &)=delete | |
MovableNonCopyable (MovableNonCopyable &&)=default | |
MovableNonCopyable & | operator= (const MovableNonCopyable &)=delete |
MovableNonCopyable & | operator= (MovableNonCopyable &&)=default |
|
default |
element::DirectedPoint carla::road::Road::GetDirectedPointIn | ( | const double | s | ) | const |
Returns a directed point on the center of the road (lane 0), with the corresponding laneOffset and elevation records applied, on distance "s".
引用了 _info, _length, carla::road::element::DirectedPoint::ApplyLateralOffset(), carla::geom::Math::Clamp(), GetElevationOn(), carla::road::InformationSet::GetInfo(), carla::road::element::DirectedPoint::location, carla::road::element::DirectedPoint::pitch , 以及 carla::geom::Vector3D::z.
被这些函数引用 carla::road::Lane::ComputeTransform(), carla::geom::MeshFactory::GenerateLaneMarksForCenterLine(), carla::road::Lane::GetCornerPositions() , 以及 GetNearestLane().
element::DirectedPoint carla::road::Road::GetDirectedPointInNoLaneOffset | ( | const double | s | ) | const |
Returns a directed point on the center of the road (lane 0), with the corresponding laneOffset and elevation records applied, on distance "s".
引用了 _info, _length, carla::geom::Math::Clamp(), GetElevationOn() , 以及 carla::road::InformationSet::GetInfo().
被这些函数引用 carla::road::MapBuilder::ComputeSignalTransform().
const geom::CubicPolynomial & carla::road::Road::GetElevationOn | ( | const double | s | ) | const |
LaneSection * carla::road::Road::GetEndSection | ( | LaneId | id | ) |
Get the end section (from road coordinates s) given a lane id
引用了 _lane_sections.
被这些函数引用 carla::road::MapBuilder::GetEdgeLanePointer().
RoadId carla::road::Road::GetId | ( | ) | const |
|
inline |
引用了 _info , 以及 carla::road::InformationSet::GetInfo().
被这些函数引用 carla::road::Lane::ComputeTransform() , 以及 carla::road::Lane::IsStraight().
|
inline |
引用了 _info , 以及 carla::road::InformationSet::GetInfos().
被这些函数引用 carla::road::Lane::IsStraight().
|
inline |
引用了 _info , 以及 carla::road::InformationSet::GetInfos().
被这些函数引用 carla::road::Map::GetSignalsInDistance().
JuncId carla::road::Road::GetJunctionId | ( | ) | const |
引用了 _junction_id.
被这些函数引用 carla::road::Map::ComputeJunctionConflicts() , 以及 carla::road::Map::GetJunctionId().
引用了 GetLaneSectionsAt() , 以及 carla::throw_exception().
被这些函数引用 carla::road::MapBuilder::GetLane() , 以及 GetLaneByDistance().
引用了 carla::road::LaneSection::GetLanes() , 以及 GetLaneSectionById().
被这些函数引用 carla::road::Map::GetLane(), GetLaneById() , 以及 carla::road::MapData::GetLaneInfo().
std::vector< Lane * > carla::road::Road::GetLanesByDistance | ( | double | s | ) |
Get all lanes from all lane sections in a specific s
引用了 GetLaneSectionsAt().
被这些函数引用 carla::road::MapBuilder::GenerateDefaultValiditiesForSignalReferences().
std::vector< const Lane * > carla::road::Road::GetLanesByDistance | ( | double | s | ) | const |
|
inline |
引用了 _lane_sections , 以及 carla::road::LaneSectionMap::GetById().
被这些函数引用 GetLaneById() , 以及 carla::road::IsLanePresent().
|
inline |
|
inline |
引用了 _lane_sections, carla::iterator::make_map_values_const_iterator() , 以及 carla::MakeListView().
被这些函数引用 carla::road::ForEachDrivableLane(), carla::road::ForEachLane(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLaneMarkForRoad(), carla::geom::MeshFactory::GenerateOrderedWithMaxLen(), carla::geom::MeshFactory::GenerateWallsWithMaxLen() , 以及 carla::geom::MeshFactory::GenerateWithMaxLen().
|
inline |
引用了 _lane_sections, GetLessEqualRange(), carla::iterator::make_map_values_iterator() , 以及 carla::MakeListView().
被这些函数引用 carla::road::ForEachDrivableLaneAt(), GetLaneByDistance(), GetLanesAt(), GetLanesByDistance(), GetLanesByDistance() , 以及 carla::road::Map::GetWaypoint().
|
inline |
double carla::road::Road::GetLength | ( | ) | const |
引用了 _length.
被这些函数引用 carla::road::MapBuilder::AddSignalReference() , 以及 carla::road::Map::GetWaypoint().
|
inlinestaticprivate |
const std::pair< const Lane *, double > carla::road::Road::GetNearestLane | ( | const double | s, |
const geom::Location & | loc, | ||
uint32_t | type = static_cast<uint32_t>(Lane::LaneType::Any) ) const |
Returns a pointer to the nearest lane, given s relative to Road and a location
dist | distance from the begining of the road to the point you want to calculate the distance |
loc | point to calculate the distance |
引用了 carla::road::element::DirectedPoint::ApplyLateralOffset(), carla::geom::Math::Distance(), GetDirectedPointIn(), GetLanesAt(), carla::road::element::DirectedPoint::location , 以及 carla::MakeListView().
const std::pair< double, double > carla::road::Road::GetNearestPoint | ( | const geom::Location & | loc | ) | const |
Returns a pair containing:
loc | point to calculate the distance |
引用了 _info, DEBUG_ASSERT , 以及 carla::road::InformationSet::GetInfos().
RoadId carla::road::Road::GetPredecessor | ( | ) | const |
LaneSection * carla::road::Road::GetStartSection | ( | LaneId | id | ) |
Get the start section (from road coordinates s) given a lane id
引用了 _lane_sections.
被这些函数引用 carla::road::MapBuilder::GetEdgeLanePointer().
RoadId carla::road::Road::GetSuccessor | ( | ) | const |
bool carla::road::Road::IsJunction | ( | ) | const |
|
inline |
Return the upper bound "s", i.e., the end distance of the lane section at s (clamped at road's length).
引用了 _lane_sections , 以及 _length.
|
private |
|
private |
被这些函数引用 IsJunction().
|
private |
被这些函数引用 GetJunctionId().
|
private |
|
private |
被这些函数引用 GetDirectedPointIn(), GetDirectedPointInNoLaneOffset(), GetLength() , 以及 UpperBound().
|
private |
被这些函数引用 carla::road::MapBuilder::AddRoad() , 以及 GetMap().
|
private |
被这些函数引用 GetNexts().
|
private |
被这些函数引用 GetPredecessor().
|
private |
被这些函数引用 GetPrevs().
|
private |
被这些函数引用 GetSuccessor().