#include <Lane.h>
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 } |
可以作为标志使用 更多... | |
Public 成员函数 | |
geom::Transform | ComputeTransform (const double s) const |
std::pair< geom::Vector3D, geom::Vector3D > | GetCornerPositions (const double s, const float extra_width=0.f) const |
计算给定位置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 LaneSection * | GetLaneSection () const |
double | GetLength () const |
bool | GetLevel () const |
const std::vector< Lane * > & | GetNextLanes () const |
LaneId | GetPredecessor () const |
const std::vector< Lane * > & | GetPreviousLanes () const |
Road * | GetRoad () const |
LaneId | GetSuccessor () const |
LaneType | GetType () const |
double | GetWidth (const double s) const |
返回给定位置s的车道总宽度 | |
bool | IsStraight () const |
检查几何形状是否是直线 | |
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 |
额外继承的成员函数 | |
![]() | |
MovableNonCopyable ()=default | |
MovableNonCopyable (const MovableNonCopyable &)=delete | |
MovableNonCopyable (MovableNonCopyable &&)=default | |
MovableNonCopyable & | operator= (const MovableNonCopyable &)=delete |
MovableNonCopyable & | operator= (MovableNonCopyable &&)=default |
|
strong |
|
default |
|
inline |
引用了 DEBUG_ASSERT.
geom::Transform carla::road::Lane::ComputeTransform | ( | const double | s | ) | const |
std::pair< geom::Vector3D, geom::Vector3D > carla::road::Lane::GetCornerPositions | ( | const double | s, |
const float | extra_width = 0.f ) const |
计算给定位置s的车道边缘位置
被这些函数引用 carla::geom::MeshFactory::ComputeEdgesForLanemark(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall(), carla::geom::MeshFactory::GenerateRightWall(), carla::geom::MeshFactory::GenerateSidewalk() , 以及 carla::geom::MeshFactory::GenerateTesselated().
double carla::road::Lane::GetDistance | ( | ) | const |
被这些函数引用 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() , 以及 get_total_road_marks().
LaneId carla::road::Lane::GetId | ( | ) | const |
|
inline |
引用了 _info, _lane_section, DEBUG_ASSERT , 以及 carla::road::InformationSet::GetInfo().
被这些函数引用 carla::geom::MeshFactory::GenerateLaneMarksForCenterLine(), carla::geom::MeshFactory::GenerateLaneMarksForNotCenterLine() , 以及 get_total_road_marks().
|
inline |
const LaneSection * carla::road::Lane::GetLaneSection | ( | ) | const |
double carla::road::Lane::GetLength | ( | ) | const |
被这些函数引用 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().
bool carla::road::Lane::GetLevel | ( | ) | const |
|
inline |
引用了 _next_lanes.
|
inline |
引用了 _predecessor.
|
inline |
引用了 _prev_lanes.
Road * carla::road::Lane::GetRoad | ( | ) | const |
|
inline |
引用了 _successor.
LaneType carla::road::Lane::GetType | ( | ) | const |
double carla::road::Lane::GetWidth | ( | const double | s | ) | const |
返回给定位置s的车道总宽度
bool carla::road::Lane::IsStraight | ( | ) | const |
检查几何形状是否是直线
被这些函数引用 carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateLeftWall() , 以及 carla::geom::MeshFactory::GenerateRightWall().
|
private |
被这些函数引用 GetInfo() , 以及 GetInfos().
|
private |
被这些函数引用 GetInfo() , 以及 GetInfos().
|
private |
被这些函数引用 GetNextLanes().
|
private |
被这些函数引用 GetPredecessor().
|
private |
被这些函数引用 GetPreviousLanes().
|
private |
被这些函数引用 GetSuccessor().
|
private |