[][src]Module map_model::make::traffic_signals

Structs

Partition

Constants

PROTECTED
YIELD

Functions

all_walk_all_yield
brute_force

Temporary experiment to group all movements into the smallest number of stages.

degenerate
expand_all_stages
four_way_four_stage
four_way_two_stage
get_possible_policies

Applies a bunch of heuristics to a single intersection, returning the valid results in best-first order. The signal configuration is only based on the roads connected to the intersection.

get_sorted_incoming_roads

Return all incoming roads to an intersection, sorted by angle. This skips one-way roads outbound from the intersection, since no turns originate from those anyway. This allows heuristics for a 3-way intersection to not care if one of the roads happens to be a dual carriageway (split into two one-ways).

greedy_assignment
half_signal
helper
make_stages
new
okay_partition
stage_per_road
synchronize

Simple second-pass after generating all signals. Find pairs of traffic signals very close to each other with 2 stages each, see if the primary movement of the first stages lead to each other, and flip the order of stages if not. This is often wrong when the most common movement is actually turning left then going straight (near Mercer for example), but not sure how we could know that without demand data.

three_way