navit
0.5.3-trunk
|
Holds information about a navigation maneuver. More...
Data Fields | |
enum item_type | type |
int | delta |
int | merge_or_exit |
int | is_complex_t_junction |
int | num_options |
int | num_new_motorways |
int | num_other_ways |
int | old_cat |
int | new_cat |
int | max_cat |
int | num_similar_ways |
int | left |
int | right |
int | is_unambiguous |
int | is_same_street |
Holds information about a navigation maneuver.
This structure is populated when a navigation maneuver is first analyzed. Its members contain all information needed to decide whether or not to announce the maneuver, what type of maneuver it is and the information that was used to determine the former two.
int navigation_maneuver::delta |
Bearing difference (the angle the driver has to steer) for the maneuver
Referenced by command_new(), maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::is_complex_t_junction |
Whether we are coming from the "stem" of a T junction whose "bar" is a dual-carriageway road and crossing the opposite lane of the "bar" first (i.e. turning left in countries that drive on the right, or turning right in countries that drive on the left). For these maneuvers
is 1 (which means we normally wouldn't announce the maneuver) but drivers would expect an announcement in such cases.
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::is_same_street |
Whether the street keeps its name after the maneuver.
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::is_unambiguous |
Whether the maneuver is unambiguous. A maneuver is unambiguous if, despite multiple candidate way being available, we can reasonable expect the driver to continue on the route without being told to do so. This is typically the case when the route stays on the main road and goes straight, while all other candidate ways are minor roads and involve a significant turn.
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::left |
Minimum bearing delta of any candidate way left of the route, -180 for none
Referenced by command_new(), maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::max_cat |
Highest maneuver category of any permitted candidate way other than the route
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::merge_or_exit |
Whether we are merging into or exiting from a motorway_like road or we are at an interchange
Referenced by maneuver_required2(), navigation_item_destination(), navigation_map_get_item(), navigation_map_item_attr_get(), and show_maneuver().
int navigation_maneuver::new_cat |
Maneuver category of the selected way after the maneuver
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::num_new_motorways |
Number of permitted candidate ways that are motorway-like. Numbers greater then one should be interpreted as "more than one", not as a precise number.
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::num_options |
Number of permitted candidate ways, i.e. ways which we may enter (based on access flags of the way but without considering turn restrictions). Permitted candidate ways include the route.
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::num_other_ways |
Number of permitted candidate ways that are neither ramps nor motorway-like
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::num_similar_ways |
Number of candidate ways (including the route) that have a
similar to
. See
for definition of "similar".
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::old_cat |
Maneuver category of the way leading to the maneuver
Referenced by maneuver_required2(), and navigation_map_item_attr_get().
int navigation_maneuver::right |
Minimum bearing delta of any candidate way right of the route, 180 for none
Referenced by command_new(), maneuver_required2(), and navigation_map_item_attr_get().
enum item_type navigation_maneuver::type |
The type of maneuver to perform. Any
item is permitted here, with one exception: merge or exit maneuvers are indicated by the
member. The
for such maneuvers should be a turn instruction in cases where the maneuver is ambiguous, or
for cases in which we would expect the driver to perform this maneuver even without being instructed to do so.
Referenced by command_new(), make_maneuvers(), maneuver_required2(), navigation_analyze_roundabout(), navigation_item_destination(), navigation_map_get_item(), navigation_map_item_attr_get(), and show_maneuver().