CARLA
 
载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | Private 属性 | 所有成员列表
carla::road::Lane类 参考

#include <Lane.h>

+ 类 carla::road::Lane 继承关系图:
+ carla::road::Lane 的协作图:

Public 类型

enum class  LaneType : int32_t {
  None = 0x1 , Driving = 0x1 << 1 , Stop = 0x1 << 2 , Shoulder = 0x1 << 3 ,
  Biking = 0x1 << 4 , Sidewalk = 0x1 << 5 , Border = 0x1 << 6 , Restricted = 0x1 << 7 ,
  Parking = 0x1 << 8 , Bidirectional = 0x1 << 9 , Median = 0x1 << 10 , Special1 = 0x1 << 11 ,
  Special2 = 0x1 << 12 , Special3 = 0x1 << 13 , RoadWorks = 0x1 << 14 , Tram = 0x1 << 15 ,
  Rail = 0x1 << 16 , Entry = 0x1 << 17 , Exit = 0x1 << 18 , OffRamp = 0x1 << 19 ,
  OnRamp = 0x1 << 20 , Any = -2
}
 Can be used as flags 更多...
 

Public 成员函数

geom::Transform ComputeTransform (const double s) const
 
std::pair< geom::Vector3D, geom::Vector3DGetCornerPositions (const double s, const float extra_width=0.f) const
 Computes the location of the edges given a s
 
double GetDistance () const
 
LaneId GetId () const
 
template<typename T >
const T * GetInfo (const double s) const
 
template<typename T >
std::vector< const T * > GetInfos () const
 
const LaneSectionGetLaneSection () const
 
double GetLength () const
 
bool GetLevel () const
 
const std::vector< Lane * > & GetNextLanes () const
 
LaneId GetPredecessor () const
 
const std::vector< Lane * > & GetPreviousLanes () const
 
RoadGetRoad () const
 
LaneId GetSuccessor () const
 
LaneType GetType () const
 
double GetWidth (const double s) const
 Returns the total lane width given a s
 
bool IsStraight () const
 Checks whether the geometry is straight or not
 
 Lane ()=default
 
 Lane (LaneSection *lane_section, LaneId id, std::vector< std::unique_ptr< element::RoadInfo > > &&info)
 

Private 属性

LaneId _id = 0
 
InformationSet _info
 
LaneSection_lane_section = nullptr
 
bool _level = false
 
std::vector< Lane * > _next_lanes
 
LaneId _predecessor = 0
 
std::vector< Lane * > _prev_lanes
 
LaneId _successor = 0
 
LaneType _type = LaneType::None
 
friend MapBuilder
 

额外继承的成员函数

- Private 成员函数 继承自 carla::MovableNonCopyable
 MovableNonCopyable ()=default
 
 MovableNonCopyable (const MovableNonCopyable &)=delete
 
 MovableNonCopyable (MovableNonCopyable &&)=default
 
MovableNonCopyableoperator= (const MovableNonCopyable &)=delete
 
MovableNonCopyableoperator= (MovableNonCopyable &&)=default
 

详细描述

在文件 Lane.h25 行定义.

成员枚举类型说明

◆ LaneType

enum class carla::road::Lane::LaneType : int32_t
strong

Can be used as flags

枚举值
None 
Driving 
Stop 
Shoulder 
Biking 
Sidewalk 
Border 
Restricted 
Parking 
Bidirectional 
Median 
Special1 
Special2 
Special3 
RoadWorks 
Tram 
Rail 
Entry 
Exit 
OffRamp 
OnRamp 
Any 

在文件 Lane.h29 行定义.

构造及析构函数说明

◆ Lane() [1/2]

carla::road::Lane::Lane ( )
default

◆ Lane() [2/2]

carla::road::Lane::Lane ( LaneSection * lane_section,
LaneId id,
std::vector< std::unique_ptr< element::RoadInfo > > && info )
inline

在文件 Lane.h58 行定义.

引用了 DEBUG_ASSERT.

成员函数说明

◆ ComputeTransform()

geom::Transform carla::road::Lane::ComputeTransform ( const double s) const

◆ GetCornerPositions()

std::pair< geom::Vector3D, geom::Vector3D > carla::road::Lane::GetCornerPositions ( const double s,
const float extra_width = 0.f ) const

Computes the location of the edges given a s

@TODO: use the OpenDRIVE 5.3.7.2.1.1.9 Lane Height Record

在文件 Lane.cpp206 行定义.

引用了 carla::road::element::DirectedPoint::ApplyLateralOffset(), carla::road::ComputeTotalLaneWidth(), DEBUG_ASSERT, Driving, carla::road::Road::GetDirectedPointIn(), GetId(), GetLaneSection(), GetRoad(), GetType(), GetWidth(), carla::road::Road::IsJunction(), carla::road::element::DirectedPoint::location, carla::MakeListView(), RELEASE_ASSERT, Sidewalk, carla::geom::Vector3D::y , 以及 carla::geom::Vector3D::z.

被这些函数引用 carla::geom::MeshFactory::ComputeEdgesForLanemark(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall(), carla::geom::MeshFactory::GenerateRightWall(), carla::geom::MeshFactory::GenerateSidewalk(), carla::geom::MeshFactory::GenerateTesselated() , 以及 carla::road::Map::GetTreesTransform().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetDistance()

double carla::road::Lane::GetDistance ( ) const

◆ GetId()

LaneId carla::road::Lane::GetId ( ) const

◆ GetInfo()

template<typename T >
const T * carla::road::Lane::GetInfo ( const double s) const
inline

在文件 Lane.h79 行定义.

引用了 _info, _lane_section, DEBUG_ASSERT , 以及 carla::road::InformationSet::GetInfo().

被这些函数引用 carla::geom::MeshFactory::GenerateLaneMarksForCenterLine(), carla::geom::MeshFactory::GenerateLaneMarksForNotCenterLine(), get_total_road_marks(), carla::road::Map::GetTreesTransform() , 以及 carla::road::Map::GetWaypoint().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetInfos()

template<typename T >
std::vector< const T * > carla::road::Lane::GetInfos ( ) const
inline

在文件 Lane.h85 行定义.

引用了 _info, _lane_section, DEBUG_ASSERT , 以及 carla::road::InformationSet::GetInfos().

+ 函数调用图:

◆ GetLaneSection()

const LaneSection * carla::road::Lane::GetLaneSection ( ) const

在文件 Lane.cpp25 行定义.

引用了 _lane_section.

被这些函数引用 ComputeTransform() , 以及 GetCornerPositions().

+ 这是这个函数的调用关系图:

◆ GetLength()

double carla::road::Lane::GetLength ( ) const

在文件 Lane.cpp51 行定义.

引用了 DEBUG_ASSERT, GetDistance() , 以及 GetRoad().

被这些函数引用 ComputeTransform(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall(), carla::geom::MeshFactory::GenerateRightWall(), carla::geom::MeshFactory::GenerateSidewalk(), carla::geom::MeshFactory::GenerateSidewalk(), carla::geom::MeshFactory::GenerateTesselated(), carla::geom::MeshFactory::GenerateTesselated(), carla::road::GetDistanceAtEndOfLane(), carla::road::GetDistanceAtStartOfLane(), carla::road::GetRemainingLength(), GetWidth() , 以及 IsStraight().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetLevel()

bool carla::road::Lane::GetLevel ( ) const

在文件 Lane.cpp42 行定义.

引用了 _level.

◆ GetNextLanes()

const std::vector< Lane * > & carla::road::Lane::GetNextLanes ( ) const
inline

在文件 Lane.h90 行定义.

引用了 _next_lanes.

被这些函数引用 carla::road::Map::GetSuccessors().

+ 这是这个函数的调用关系图:

◆ GetPredecessor()

LaneId carla::road::Lane::GetPredecessor ( ) const
inline

在文件 Lane.h102 行定义.

引用了 _predecessor.

被这些函数引用 carla::road::MapBuilder::GetLaneNext().

+ 这是这个函数的调用关系图:

◆ GetPreviousLanes()

const std::vector< Lane * > & carla::road::Lane::GetPreviousLanes ( ) const
inline

在文件 Lane.h94 行定义.

引用了 _prev_lanes.

被这些函数引用 carla::road::Map::GetPredecessors().

+ 这是这个函数的调用关系图:

◆ GetRoad()

Road * carla::road::Lane::GetRoad ( ) const

在文件 Lane.cpp29 行定义.

引用了 _lane_section, DEBUG_ASSERT , 以及 carla::road::LaneSection::GetRoad().

被这些函数引用 ComputeTransform(), GetCornerPositions(), GetLength(), GetWidth(), IsStraight() , 以及 carla::opendrive::parser::ParseLanes().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetSuccessor()

LaneId carla::road::Lane::GetSuccessor ( ) const
inline

在文件 Lane.h98 行定义.

引用了 _successor.

被这些函数引用 carla::road::MapBuilder::GetLaneNext().

+ 这是这个函数的调用关系图:

◆ GetType()

Lane::LaneType carla::road::Lane::GetType ( ) const

在文件 Lane.cpp38 行定义.

引用了 _type.

被这些函数引用 carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall(), carla::geom::MeshFactory::GenerateRightWall(), carla::geom::MeshFactory::GenerateSidewalk(), carla::geom::MeshFactory::GenerateTesselated(), GetCornerPositions() , 以及 carla::road::Map::GetLaneType().

+ 这是这个函数的调用关系图:

◆ GetWidth()

double carla::road::Lane::GetWidth ( const double s) const

Returns the total lane width given a s

在文件 Lane.cpp58 行定义.

引用了 GetLength(), GetRoad() , 以及 RELEASE_ASSERT.

被这些函数引用 GetCornerPositions() , 以及 carla::road::Map::GetTreesTransform().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ IsStraight()

bool carla::road::Lane::IsStraight ( ) const

Checks whether the geometry is straight or not

在文件 Lane.cpp67 行定义.

引用了 DEBUG_ASSERT, GetDistance(), carla::road::Road::GetInfo(), carla::road::Road::GetInfos(), GetLength(), GetRoad(), carla::road::element::LINE , 以及 RELEASE_ASSERT.

被这些函数引用 carla::road::Map::CreateRtree(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall() , 以及 carla::geom::MeshFactory::GenerateRightWall().

+ 函数调用图:
+ 这是这个函数的调用关系图:

类成员变量说明

◆ _id

LaneId carla::road::Lane::_id = 0
private

在文件 Lane.h128 行定义.

被这些函数引用 GetId().

◆ _info

InformationSet carla::road::Lane::_info
private

在文件 Lane.h130 行定义.

被这些函数引用 GetInfo() , 以及 GetInfos().

◆ _lane_section

LaneSection* carla::road::Lane::_lane_section = nullptr
private

在文件 Lane.h126 行定义.

被这些函数引用 GetDistance(), GetInfo(), GetInfos(), GetLaneSection() , 以及 GetRoad().

◆ _level

bool carla::road::Lane::_level = false
private

在文件 Lane.h134 行定义.

被这些函数引用 GetLevel().

◆ _next_lanes

std::vector<Lane *> carla::road::Lane::_next_lanes
private

在文件 Lane.h140 行定义.

被这些函数引用 GetNextLanes().

◆ _predecessor

LaneId carla::road::Lane::_predecessor = 0
private

在文件 Lane.h138 行定义.

被这些函数引用 GetPredecessor().

◆ _prev_lanes

std::vector<Lane *> carla::road::Lane::_prev_lanes
private

在文件 Lane.h142 行定义.

被这些函数引用 GetPreviousLanes().

◆ _successor

LaneId carla::road::Lane::_successor = 0
private

在文件 Lane.h136 行定义.

被这些函数引用 GetSuccessor().

◆ _type

LaneType carla::road::Lane::_type = LaneType::None
private

在文件 Lane.h132 行定义.

被这些函数引用 GetType().

◆ MapBuilder

friend carla::road::Lane::MapBuilder
private

在文件 Lane.h124 行定义.


该类的文档由以下文件生成: