36 const bool right_of_way_status) {
39 const auto& junction_overlaps =
40 reference_line_info.reference_line().map_path().junction_overlaps();
41 if (junction_overlaps.empty()) {
46 GetTrafficSignOverlap(reference_line_info, context);
47 if (!traffic_sign_overlap) {
51 static constexpr double kIntersectionPassDist = 20.0;
52 const double adc_back_edge_s =
53 reference_line_info.AdcSlBoundary().start_s();
54 const double distance_adc_pass_traffic_sign =
55 adc_back_edge_s - traffic_sign_overlap->
end_s;
56 ADEBUG <<
"distance_adc_pass_traffic_sign["
57 << distance_adc_pass_traffic_sign <<
"] traffic_sign_end_s["
58 << traffic_sign_overlap->
end_s <<
"]";
61 reference_line_info.SetJunctionRightOfWay(traffic_sign_overlap->
start_s,
64 return distance_adc_pass_traffic_sign >= kIntersectionPassDist;
73 const double adc_front_edge_s = reference_line_info.AdcSlBoundary().
end_s();
74 reference_line_info.GetJunction(adc_front_edge_s, &junction_overlap);
75 reference_line_info.SetJunctionRightOfWay(junction_overlap.
start_s,