|
Apollo
6.0
Open source self driving car software
|
High-precision map loader implement. More...
#include <hdmap_impl.h>

Public Types | |
| using | LaneTable = std::unordered_map< std::string, std::shared_ptr< LaneInfo > > |
| using | JunctionTable = std::unordered_map< std::string, std::shared_ptr< JunctionInfo > > |
| using | SignalTable = std::unordered_map< std::string, std::shared_ptr< SignalInfo > > |
| using | CrosswalkTable = std::unordered_map< std::string, std::shared_ptr< CrosswalkInfo > > |
| using | StopSignTable = std::unordered_map< std::string, std::shared_ptr< StopSignInfo > > |
| using | YieldSignTable = std::unordered_map< std::string, std::shared_ptr< YieldSignInfo > > |
| using | ClearAreaTable = std::unordered_map< std::string, std::shared_ptr< ClearAreaInfo > > |
| using | SpeedBumpTable = std::unordered_map< std::string, std::shared_ptr< SpeedBumpInfo > > |
| using | OverlapTable = std::unordered_map< std::string, std::shared_ptr< OverlapInfo > > |
| using | RoadTable = std::unordered_map< std::string, std::shared_ptr< RoadInfo > > |
| using | ParkingSpaceTable = std::unordered_map< std::string, std::shared_ptr< ParkingSpaceInfo > > |
| using | PNCJunctionTable = std::unordered_map< std::string, std::shared_ptr< PNCJunctionInfo > > |
| using | RSUTable = std::unordered_map< std::string, std::shared_ptr< RSUInfo > > |
Public Member Functions | |
| int | LoadMapFromFile (const std::string &map_filename) |
| load map from local file More... | |
| int | LoadMapFromProto (const Map &map_proto) |
| load map from a protobuf message More... | |
| LaneInfoConstPtr | GetLaneById (const Id &id) const |
| JunctionInfoConstPtr | GetJunctionById (const Id &id) const |
| SignalInfoConstPtr | GetSignalById (const Id &id) const |
| CrosswalkInfoConstPtr | GetCrosswalkById (const Id &id) const |
| StopSignInfoConstPtr | GetStopSignById (const Id &id) const |
| YieldSignInfoConstPtr | GetYieldSignById (const Id &id) const |
| ClearAreaInfoConstPtr | GetClearAreaById (const Id &id) const |
| SpeedBumpInfoConstPtr | GetSpeedBumpById (const Id &id) const |
| OverlapInfoConstPtr | GetOverlapById (const Id &id) const |
| RoadInfoConstPtr | GetRoadById (const Id &id) const |
| ParkingSpaceInfoConstPtr | GetParkingSpaceById (const Id &id) const |
| PNCJunctionInfoConstPtr | GetPNCJunctionById (const Id &id) const |
| RSUInfoConstPtr | GetRSUById (const Id &id) const |
| int | GetLanes (const apollo::common::PointENU &point, double distance, std::vector< LaneInfoConstPtr > *lanes) const |
| get all lanes in certain range More... | |
| int | GetJunctions (const apollo::common::PointENU &point, double distance, std::vector< JunctionInfoConstPtr > *junctions) const |
| get all junctions in certain range More... | |
| int | GetCrosswalks (const apollo::common::PointENU &point, double distance, std::vector< CrosswalkInfoConstPtr > *crosswalks) const |
| get all crosswalks in certain range More... | |
| int | GetSignals (const apollo::common::PointENU &point, double distance, std::vector< SignalInfoConstPtr > *signals) const |
| get all signals in certain range More... | |
| int | GetStopSigns (const apollo::common::PointENU &point, double distance, std::vector< StopSignInfoConstPtr > *stop_signs) const |
| get all stop signs in certain range More... | |
| int | GetYieldSigns (const apollo::common::PointENU &point, double distance, std::vector< YieldSignInfoConstPtr > *yield_signs) const |
| get all yield signs in certain range More... | |
| int | GetClearAreas (const apollo::common::PointENU &point, double distance, std::vector< ClearAreaInfoConstPtr > *clear_areas) const |
| get all clear areas in certain range More... | |
| int | GetSpeedBumps (const apollo::common::PointENU &point, double distance, std::vector< SpeedBumpInfoConstPtr > *speed_bumps) const |
| get all speed bumps in certain range More... | |
| int | GetRoads (const apollo::common::PointENU &point, double distance, std::vector< RoadInfoConstPtr > *roads) const |
| get all roads in certain range More... | |
| int | GetParkingSpaces (const apollo::common::PointENU &point, double distance, std::vector< ParkingSpaceInfoConstPtr > *parking_spaces) const |
| get all parking space in certain range More... | |
| int | GetPNCJunctions (const apollo::common::PointENU &point, double distance, std::vector< PNCJunctionInfoConstPtr > *pnc_junctions) const |
| get all pnc junctions in certain range More... | |
| int | GetNearestLane (const apollo::common::PointENU &point, LaneInfoConstPtr *nearest_lane, double *nearest_s, double *nearest_l) const |
| get nearest lane from target point, More... | |
| int | GetNearestLaneWithHeading (const apollo::common::PointENU &point, const double distance, const double central_heading, const double max_heading_difference, LaneInfoConstPtr *nearest_lane, double *nearest_s, double *nearest_l) const |
| get the nearest lane within a certain range by pose More... | |
| int | GetLanesWithHeading (const apollo::common::PointENU &point, const double distance, const double central_heading, const double max_heading_difference, std::vector< LaneInfoConstPtr > *lanes) const |
| get all lanes within a certain range by pose More... | |
| int | GetRoadBoundaries (const apollo::common::PointENU &point, double radius, std::vector< RoadROIBoundaryPtr > *road_boundaries, std::vector< JunctionBoundaryPtr > *junctions) const |
| get all road and junctions boundaries within certain range More... | |
| int | GetRoadBoundaries (const apollo::common::PointENU &point, double radius, std::vector< RoadRoiPtr > *road_boundaries, std::vector< JunctionInfoConstPtr > *junctions) const |
| get all road boundaries and junctions within certain range More... | |
| int | GetRoi (const apollo::common::PointENU &point, double radius, std::vector< RoadRoiPtr > *roads_roi, std::vector< PolygonRoiPtr > *polygons_roi) |
| get ROI within certain range More... | |
| int | GetForwardNearestSignalsOnLane (const apollo::common::PointENU &point, const double distance, std::vector< SignalInfoConstPtr > *signals) const |
| get forward nearest signals within certain range on the lane if there are two signals related to one stop line, return both signals. More... | |
| int | GetStopSignAssociatedStopSigns (const Id &id, std::vector< StopSignInfoConstPtr > *stop_signs) const |
| get all other stop signs associated with a stop sign in the same junction More... | |
| int | GetStopSignAssociatedLanes (const Id &id, std::vector< LaneInfoConstPtr > *lanes) const |
| get all lanes associated with a stop sign in the same junction More... | |
| int | GetLocalMap (const apollo::common::PointENU &point, const std::pair< double, double > &range, Map *local_map) const |
| get a local map which is identical to the origin map except that all map elements without overlap with the given region are deleted. More... | |
| int | GetForwardNearestRSUs (const apollo::common::PointENU &point, double distance, double central_heading, double max_heading_difference, std::vector< RSUInfoConstPtr > *rsus) const |
| get forward nearest rsus within certain range More... | |
High-precision map loader implement.
| using apollo::hdmap::HDMapImpl::ClearAreaTable = std::unordered_map<std::string, std::shared_ptr<ClearAreaInfo> > |
| using apollo::hdmap::HDMapImpl::CrosswalkTable = std::unordered_map<std::string, std::shared_ptr<CrosswalkInfo> > |
| using apollo::hdmap::HDMapImpl::JunctionTable = std::unordered_map<std::string, std::shared_ptr<JunctionInfo> > |
| using apollo::hdmap::HDMapImpl::LaneTable = std::unordered_map<std::string, std::shared_ptr<LaneInfo> > |
| using apollo::hdmap::HDMapImpl::OverlapTable = std::unordered_map<std::string, std::shared_ptr<OverlapInfo> > |
| using apollo::hdmap::HDMapImpl::ParkingSpaceTable = std::unordered_map<std::string, std::shared_ptr<ParkingSpaceInfo> > |
| using apollo::hdmap::HDMapImpl::PNCJunctionTable = std::unordered_map<std::string, std::shared_ptr<PNCJunctionInfo> > |
| using apollo::hdmap::HDMapImpl::RoadTable = std::unordered_map<std::string, std::shared_ptr<RoadInfo> > |
| using apollo::hdmap::HDMapImpl::RSUTable = std::unordered_map<std::string, std::shared_ptr<RSUInfo> > |
| using apollo::hdmap::HDMapImpl::SignalTable = std::unordered_map<std::string, std::shared_ptr<SignalInfo> > |
| using apollo::hdmap::HDMapImpl::SpeedBumpTable = std::unordered_map<std::string, std::shared_ptr<SpeedBumpInfo> > |
| using apollo::hdmap::HDMapImpl::StopSignTable = std::unordered_map<std::string, std::shared_ptr<StopSignInfo> > |
| using apollo::hdmap::HDMapImpl::YieldSignTable = std::unordered_map<std::string, std::shared_ptr<YieldSignInfo> > |
| ClearAreaInfoConstPtr apollo::hdmap::HDMapImpl::GetClearAreaById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetClearAreas | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< ClearAreaInfoConstPtr > * | clear_areas | ||
| ) | const |
get all clear areas in certain range
| point | the central point of the range |
| distance | the search radius |
| clear_areas | store all clear areas in target range |
| CrosswalkInfoConstPtr apollo::hdmap::HDMapImpl::GetCrosswalkById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetCrosswalks | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< CrosswalkInfoConstPtr > * | crosswalks | ||
| ) | const |
get all crosswalks in certain range
| point | the central point of the range |
| distance | the search radius |
| crosswalks | store all crosswalks in target range |
| int apollo::hdmap::HDMapImpl::GetForwardNearestRSUs | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| double | central_heading, | ||
| double | max_heading_difference, | ||
| std::vector< RSUInfoConstPtr > * | rsus | ||
| ) | const |
get forward nearest rsus within certain range
| point | the target position |
| distance | the forward search distance |
| central_heading | the base heading |
| max_heading_difference | the heading range |
| rsus | all rsus that match search conditions |
| int apollo::hdmap::HDMapImpl::GetForwardNearestSignalsOnLane | ( | const apollo::common::PointENU & | point, |
| const double | distance, | ||
| std::vector< SignalInfoConstPtr > * | signals | ||
| ) | const |
get forward nearest signals within certain range on the lane if there are two signals related to one stop line, return both signals.
| point | the target position |
| distance | the forward search distance |
| signals | all signals match conditions |
| JunctionInfoConstPtr apollo::hdmap::HDMapImpl::GetJunctionById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetJunctions | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< JunctionInfoConstPtr > * | junctions | ||
| ) | const |
get all junctions in certain range
| point | the central point of the range |
| distance | the search radius |
| junctions | store all junctions in target range |
| LaneInfoConstPtr apollo::hdmap::HDMapImpl::GetLaneById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetLanes | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< LaneInfoConstPtr > * | lanes | ||
| ) | const |
get all lanes in certain range
| point | the central point of the range |
| distance | the search radius |
| lanes | store all lanes in target range |
| int apollo::hdmap::HDMapImpl::GetLanesWithHeading | ( | const apollo::common::PointENU & | point, |
| const double | distance, | ||
| const double | central_heading, | ||
| const double | max_heading_difference, | ||
| std::vector< LaneInfoConstPtr > * | lanes | ||
| ) | const |
get all lanes within a certain range by pose
| point | the target position |
| distance | the search radius |
| central_heading | the base heading |
| max_heading_difference | the heading range |
| nearest_lane | all lanes that match search conditions |
| int apollo::hdmap::HDMapImpl::GetLocalMap | ( | const apollo::common::PointENU & | point, |
| const std::pair< double, double > & | range, | ||
| Map * | local_map | ||
| ) | const |
get a local map which is identical to the origin map except that all map elements without overlap with the given region are deleted.
| point | the target position |
| range | the size of local map region, [width, height] |
| local_map | local map in proto format |
| int apollo::hdmap::HDMapImpl::GetNearestLane | ( | const apollo::common::PointENU & | point, |
| LaneInfoConstPtr * | nearest_lane, | ||
| double * | nearest_s, | ||
| double * | nearest_l | ||
| ) | const |
get nearest lane from target point,
| point | the target point |
| nearest_lane | the nearest lane that match search conditions |
| nearest_s | the offset from lane start point along lane center line |
| nearest_l | the lateral offset from lane center line |
| int apollo::hdmap::HDMapImpl::GetNearestLaneWithHeading | ( | const apollo::common::PointENU & | point, |
| const double | distance, | ||
| const double | central_heading, | ||
| const double | max_heading_difference, | ||
| LaneInfoConstPtr * | nearest_lane, | ||
| double * | nearest_s, | ||
| double * | nearest_l | ||
| ) | const |
get the nearest lane within a certain range by pose
| point | the target position |
| distance | the search radius |
| central_heading | the base heading |
| max_heading_difference | the heading range |
| nearest_lane | the nearest lane that match search conditions |
| nearest_s | the offset from lane start point along lane center line |
| nearest_l | the lateral offset from lane center line |
| OverlapInfoConstPtr apollo::hdmap::HDMapImpl::GetOverlapById | ( | const Id & | id | ) | const |
| ParkingSpaceInfoConstPtr apollo::hdmap::HDMapImpl::GetParkingSpaceById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetParkingSpaces | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< ParkingSpaceInfoConstPtr > * | parking_spaces | ||
| ) | const |
get all parking space in certain range
| point | the central point of the range |
| distance | the search radius |
| parking_spaces | store all parking spaces in target range |
| PNCJunctionInfoConstPtr apollo::hdmap::HDMapImpl::GetPNCJunctionById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetPNCJunctions | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< PNCJunctionInfoConstPtr > * | pnc_junctions | ||
| ) | const |
get all pnc junctions in certain range
| point | the central point of the range |
| distance | the search radius |
| junctions | store all junctions in target range |
| int apollo::hdmap::HDMapImpl::GetRoadBoundaries | ( | const apollo::common::PointENU & | point, |
| double | radius, | ||
| std::vector< RoadROIBoundaryPtr > * | road_boundaries, | ||
| std::vector< JunctionBoundaryPtr > * | junctions | ||
| ) | const |
get all road and junctions boundaries within certain range
| point | the target position |
| radius | the search radius |
| road_boundaries | the roads' boundaries |
| junctions | the junctions' boundaries |
| int apollo::hdmap::HDMapImpl::GetRoadBoundaries | ( | const apollo::common::PointENU & | point, |
| double | radius, | ||
| std::vector< RoadRoiPtr > * | road_boundaries, | ||
| std::vector< JunctionInfoConstPtr > * | junctions | ||
| ) | const |
get all road boundaries and junctions within certain range
| point | the target position |
| radius | the search radius |
| road_boundaries | the roads' boundaries |
| junctions | the junctions |
| RoadInfoConstPtr apollo::hdmap::HDMapImpl::GetRoadById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetRoads | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< RoadInfoConstPtr > * | roads | ||
| ) | const |
get all roads in certain range
| point | the central point of the range |
| distance | the search radius |
| roads | store all roads in target range |
| int apollo::hdmap::HDMapImpl::GetRoi | ( | const apollo::common::PointENU & | point, |
| double | radius, | ||
| std::vector< RoadRoiPtr > * | roads_roi, | ||
| std::vector< PolygonRoiPtr > * | polygons_roi | ||
| ) |
get ROI within certain range
| point | the target position |
| radius | the search radius |
| roads_roi | the roads' boundaries |
| polygons_roi | the junctions' boundaries |
| RSUInfoConstPtr apollo::hdmap::HDMapImpl::GetRSUById | ( | const Id & | id | ) | const |
| SignalInfoConstPtr apollo::hdmap::HDMapImpl::GetSignalById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetSignals | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< SignalInfoConstPtr > * | signals | ||
| ) | const |
get all signals in certain range
| point | the central point of the range |
| distance | the search radius |
| signals | store all signals in target range |
| SpeedBumpInfoConstPtr apollo::hdmap::HDMapImpl::GetSpeedBumpById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetSpeedBumps | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< SpeedBumpInfoConstPtr > * | speed_bumps | ||
| ) | const |
get all speed bumps in certain range
| point | the central point of the range |
| distance | the search radius |
| speed_bumps | store all speed bumps in target range |
| int apollo::hdmap::HDMapImpl::GetStopSignAssociatedLanes | ( | const Id & | id, |
| std::vector< LaneInfoConstPtr > * | lanes | ||
| ) | const |
get all lanes associated with a stop sign in the same junction
| id | id of stop sign |
| lanes | all lanes match conditions |
| int apollo::hdmap::HDMapImpl::GetStopSignAssociatedStopSigns | ( | const Id & | id, |
| std::vector< StopSignInfoConstPtr > * | stop_signs | ||
| ) | const |
get all other stop signs associated with a stop sign in the same junction
| id | id of stop sign |
| stop_signs | stop signs associated |
| StopSignInfoConstPtr apollo::hdmap::HDMapImpl::GetStopSignById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetStopSigns | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< StopSignInfoConstPtr > * | stop_signs | ||
| ) | const |
get all stop signs in certain range
| point | the central point of the range |
| distance | the search radius |
| stop | signs store all stop signs in target range |
| YieldSignInfoConstPtr apollo::hdmap::HDMapImpl::GetYieldSignById | ( | const Id & | id | ) | const |
| int apollo::hdmap::HDMapImpl::GetYieldSigns | ( | const apollo::common::PointENU & | point, |
| double | distance, | ||
| std::vector< YieldSignInfoConstPtr > * | yield_signs | ||
| ) | const |
get all yield signs in certain range
| point | the central point of the range |
| distance | the search radius |
| yield | signs store all yield signs in target range |
| int apollo::hdmap::HDMapImpl::LoadMapFromFile | ( | const std::string & | map_filename | ) |
load map from local file
| map_filename | path of map data file |
| int apollo::hdmap::HDMapImpl::LoadMapFromProto | ( | const Map & | map_proto | ) |
load map from a protobuf message
| map_proto | map data in protobuf format |
1.8.13