maliput_malidrive
builder_tools.cc File Reference
Include dependency graph for builder_tools.cc:

Namespaces

 malidrive
 Generate a new XODR file which is filled with Roads that are extracted from an another XODR file.
 
 malidrive::builder
 

Functions

std::vector< maliput::api::LaneEndSolveLaneEndsForConnectingRoad (const maliput::api::RoadGeometry *rg, const MalidriveXodrLaneProperties &xodr_lane_properties, const std::map< xodr::RoadHeader::Id, xodr::RoadHeader > &road_headers, XodrConnectionType connection_type)
 Searches which LaneEnds connect to xodr_lane_properties.lane in connection_type direction considering the LaneEnd belongs to an external interface with other XODR Roads, not XODR Junctions. More...
 
std::vector< maliput::api::LaneEndSolveLaneEndsForJunction (const maliput::api::RoadGeometry *rg, const MalidriveXodrLaneProperties &xodr_lane_properties, const std::map< xodr::RoadHeader::Id, xodr::RoadHeader > &road_headers, const std::unordered_map< xodr::Junction::Id, xodr::Junction > &junctions, XodrConnectionType connection_type)
 Searches which LaneEnds connect to xodr_lane_properties.lane in connection_type direction considering the LaneEnd belongs to an external interface with a XODR Junction but the XODR Road does not live in a XODR Junction. More...
 
std::vector< maliput::api::LaneEndSolveLaneEndsWithinJunction (const maliput::api::RoadGeometry *rg, const MalidriveXodrLaneProperties &xodr_lane_properties, const std::map< xodr::RoadHeader::Id, xodr::RoadHeader > &road_headers, XodrConnectionType connection_type)
 Searches which LaneEnds connect to xodr_lane_properties.lane in connection_type direction considering the LaneEnd belongs to an external interface. More...
 
std::vector< maliput::api::LaneEndSolveLaneEndsForInnerLaneSection (const maliput::api::RoadGeometry *rg, const maliput::api::LaneEnd &lane_end, const MalidriveXodrLaneProperties &xodr_lane_properties)
 Searches which LaneEnds connect to lane_end considering it belongs to an inner interface. More...
 
bool is_driveable_lane (const xodr::Lane &xodr_lane)
 Determines whether or not an xodr_lane is driveable by any vehicle. More...
 
bool AreOnlyNonDrivableLanes (const xodr::RoadHeader &xodr_road)
 Determines whether or not an xodr_road contains only non-drivable lanes. More...
 
std::string VehicleUsageValueForXodrLane (const xodr::Lane &xodr_lane)
 Determines the vehicle usage rule state value for xodr_lane based on its XODR Lane type. More...
 
std::optional< std::string > VehicleExclusiveValueForXodrLane (const xodr::Lane &xodr_lane)
 Determines the vehicle exclusive rule state value for xodr_lane based on its XODR Lane type. More...
 
std::vector< rules::XodrSpeedProperties > GetRoadTypeSpeedPropertiesInRange (const xodr::RoadHeader &xodr_road, double s_track_start, double s_track_end)
 
std::vector< rules::XodrSpeedProperties > GetLaneSpeedProperties (const xodr::Lane &xodr_lane, double s_track_start, double s_track_end)
 
const xodr::RoadHeader & GetXodrRoadFromMalidriveLane (const Lane *lane)
 
const xodr::LaneGetXodrLaneFromMalidriveLane (const Lane *lane)
 
std::string GetDirectionUsageRuleStateType (const Lane *lane)
 
std::vector< rules::XodrSpeedProperties > GetMaxSpeedLimitFor (const Lane *lane)
 
std::pair< std::string, std::optional< std::string > > VehicleUsageAndExclusiveRuleStateValues (const Lane *lane)
 
std::optional< double > FindLocalMinFromCubicPol (double a, double b, double c, double d)
 Finds the local minimum of the cubic polynomial. More...
 

Variable Documentation

◆ is_driveable_lane

bool is_driveable_lane {false}

◆ vehicle_exclusive_value

std::optional<std::string> vehicle_exclusive_value

◆ vehicle_usage_value

std::string vehicle_usage_value