From 63df8a8fbf2f8b3596fc352e35a153530eca979c Mon Sep 17 00:00:00 2001 From: dabreegster Date: Fri, 19 Mar 2021 01:00:42 +0000 Subject: [PATCH] deploy: df58528d79abe68a8e5da20289b461bb3c915e12 --- rustdoc/convert_osm/all.html | 2 +- .../convert_osm/elevation/fn.add_data.html | 2 +- .../elevation/fn.generate_input.html | 2 +- .../elevation/fn.scrape_output.html | 4 + rustdoc/convert_osm/elevation/index.html | 4 +- .../convert_osm/elevation/sidebar-items.js | 2 +- .../built_info/constant.BUILT_TIME_UTC.html | 2 +- rustdoc/map_editor/model/enum.ID.html | 14 +- rustdoc/map_editor/model/fn.dump_to_osm.html | 2 +- rustdoc/map_editor/model/fn.time_to_id.html | 2 +- rustdoc/map_editor/model/index.html | 2 +- rustdoc/map_editor/model/struct.Model.html | 2 +- rustdoc/map_editor/world/trait.ObjectID.html | 2 +- rustdoc/search-index.js | 2 +- rustdoc/src/convert_osm/elevation.rs.html | 250 +++++++++++------- .../game-a95c4551e63dceca/out/built.rs.html | 2 +- rustdoc/src/map_editor/model.rs.html | 4 - 17 files changed, 180 insertions(+), 120 deletions(-) create mode 100644 rustdoc/convert_osm/elevation/fn.scrape_output.html diff --git a/rustdoc/convert_osm/all.html b/rustdoc/convert_osm/all.html index d798245367..b36f721558 100644 --- a/rustdoc/convert_osm/all.html +++ b/rustdoc/convert_osm/all.html @@ -3,4 +3,4 @@

[] - List of all items

Structs

Enums

Functions

Constants

\ No newline at end of file + List of all items

Structs

Enums

Functions

Constants

\ No newline at end of file diff --git a/rustdoc/convert_osm/elevation/fn.add_data.html b/rustdoc/convert_osm/elevation/fn.add_data.html index 37590089f2..4c5c319dd9 100644 --- a/rustdoc/convert_osm/elevation/fn.add_data.html +++ b/rustdoc/convert_osm/elevation/fn.add_data.html @@ -1,4 +1,4 @@ convert_osm::elevation::add_data - Rust

[][src]Function convert_osm::elevation::add_data

pub fn add_data(map: &mut RawMap, timer: &mut Timer<'_>) -> Result<()>
\ No newline at end of file + Change settings

[][src]Function convert_osm::elevation::add_data

pub fn add_data(map: &mut RawMap, timer: &mut Timer<'_>) -> Result<()>
\ No newline at end of file diff --git a/rustdoc/convert_osm/elevation/fn.generate_input.html b/rustdoc/convert_osm/elevation/fn.generate_input.html index a4633e9741..956f33102f 100644 --- a/rustdoc/convert_osm/elevation/fn.generate_input.html +++ b/rustdoc/convert_osm/elevation/fn.generate_input.html @@ -1,4 +1,4 @@ convert_osm::elevation::generate_input - Rust

[][src]Function convert_osm::elevation::generate_input

fn generate_input(map: &RawMap) -> Result<Vec<OriginalRoad>>
\ No newline at end of file + Change settings

[][src]Function convert_osm::elevation::generate_input

fn generate_input(map: &RawMap) -> Result<Vec<OriginalRoad>>
\ No newline at end of file diff --git a/rustdoc/convert_osm/elevation/fn.scrape_output.html b/rustdoc/convert_osm/elevation/fn.scrape_output.html new file mode 100644 index 0000000000..36c7fd8131 --- /dev/null +++ b/rustdoc/convert_osm/elevation/fn.scrape_output.html @@ -0,0 +1,4 @@ +convert_osm::elevation::scrape_output - Rust + +

[][src]Function convert_osm::elevation::scrape_output

fn scrape_output(map: &mut RawMap, ids: Vec<OriginalRoad>) -> Result<()>
\ No newline at end of file diff --git a/rustdoc/convert_osm/elevation/index.html b/rustdoc/convert_osm/elevation/index.html index 2ef05cf0ab..01259c216a 100644 --- a/rustdoc/convert_osm/elevation/index.html +++ b/rustdoc/convert_osm/elevation/index.html @@ -1,5 +1,5 @@ convert_osm::elevation - Rust

[][src]Module convert_osm::elevation

Functions

-
add_data
generate_input
\ No newline at end of file + Change settings

[][src]Module convert_osm::elevation

Functions

+
add_data
generate_input
scrape_output
\ No newline at end of file diff --git a/rustdoc/convert_osm/elevation/sidebar-items.js b/rustdoc/convert_osm/elevation/sidebar-items.js index 8216fb10ab..d46ffcdf80 100644 --- a/rustdoc/convert_osm/elevation/sidebar-items.js +++ b/rustdoc/convert_osm/elevation/sidebar-items.js @@ -1 +1 @@ -initSidebarItems({"fn":[["add_data",""],["generate_input",""]]}); \ No newline at end of file +initSidebarItems({"fn":[["add_data",""],["generate_input",""],["scrape_output",""]]}); \ No newline at end of file diff --git a/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html b/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html index 996eca5101..93d5787c54 100644 --- a/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html +++ b/rustdoc/game/pregame/built_info/constant.BUILT_TIME_UTC.html @@ -1,5 +1,5 @@ game::pregame::built_info::BUILT_TIME_UTC - Rust

[][src]Constant game::pregame::built_info::BUILT_TIME_UTC

pub const BUILT_TIME_UTC: &str = "Thu, 18 Mar 2021 18:27:27 +0000";

The built-time in RFC2822, UTC

+ Change settings

[][src]Constant game::pregame::built_info::BUILT_TIME_UTC

pub const BUILT_TIME_UTC: &str = "Fri, 19 Mar 2021 00:57:58 +0000";

The built-time in RFC2822, UTC

\ No newline at end of file diff --git a/rustdoc/map_editor/model/enum.ID.html b/rustdoc/map_editor/model/enum.ID.html index 242ec71507..f14ec1c3ff 100644 --- a/rustdoc/map_editor/model/enum.ID.html +++ b/rustdoc/map_editor/model/enum.ID.html @@ -1,22 +1,22 @@ map_editor::model::ID - Rust

[][src]Enum map_editor::model::ID

pub enum ID {
+                Change settings

[][src]Enum map_editor::model::ID

pub enum ID {
     Building(OsmID),
     Intersection(NodeID),
     Road(OriginalRoad),
     RoadPoint(OriginalRoadusize),
 }

Variants

-
Building(OsmID)
Intersection(NodeID)
RoadPoint(OriginalRoadusize)

Trait Implementations

impl Clone for ID[src]

\ No newline at end of file diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js index cc31b5d1ab..358aec93ed 100644 --- a/rustdoc/search-index.js +++ b/rustdoc/search-index.js @@ -4,7 +4,7 @@ var searchIndex = JSON.parse('{\ "augment_scenario":{"doc":"A tool to modify each person\'s schedule from an existing …","i":[[5,"main","augment_scenario","",null,[[]]],[5,"add_return_trips","","",null,[[["xorshiftrng",3],["scenario",3]]]],[5,"rand_duration","","",null,[[["xorshiftrng",3],["duration",3]],["duration",3]]],[5,"add_lunch_trips","","",null,[[["map",3],["timer",3],["scenario",3],["xorshiftrng",3]]]],[5,"pick_lunch_spot","","",null,[[["map",3],["findclosest",3],["buildingid",3],["xorshiftrng",3]],["option",4]]]],"p":[]},\ "clip_osm":{"doc":"","i":[[5,"main","clip_osm","Clips an .osm.pbf specified by --pbf using the Osmosis …",null,[[],["result",6]]],[5,"clip","","",null,[[["polygon",3]],["result",6]]],[5,"to_pt","","",null,[[],["point",3]]]],"p":[]},\ "collisions":{"doc":"A simple data format to list collisions that\'ve occurred …","i":[[3,"CollisionDataset","collisions","A single dataset describing some collisions that happened.",null,null],[12,"source_url","","A URL pointing to the original data source.",0,null],[12,"collisions","","The collisions imported from the data source.",0,null],[3,"Collision","","A single collision that occurred in the real world.",null,null],[12,"location","","A single point describing where the collision occurred.",1,null],[12,"time","","The local time the collision occurred.",1,null],[12,"severity","","The severity reported in the original data source.",1,null],[4,"Severity","","A simple ranking for how severe the collision was. …",null,null],[13,"Slight","","",2,null],[13,"Serious","","",2,null],[13,"Fatal","","",2,null],[5,"import_stats19","","Import data from the UK STATS19 dataset. See …",null,[[["extrashapes",3]],["collisiondataset",3]]],[5,"import_seattle","","Import data from Seattle GeoData …",null,[[["extrashapes",3]],["collisiondataset",3]]],[5,"parse_incdttm","","",null,[[],[["option",4],["duration",3]]]],[11,"from","","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"to_owned","","",2,[[]]],[11,"clone_into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"equivalent","","",2,[[]]],[11,"clone","","",2,[[],["severity",4]]],[11,"eq","","",2,[[["severity",4]]]],[11,"fmt","","",2,[[["formatter",3]],["result",6]]],[11,"deserialize","","",0,[[],["result",4]]],[11,"deserialize","","",1,[[],["result",4]]],[11,"deserialize","","",2,[[],["result",4]]],[11,"serialize","","",0,[[],["result",4]]],[11,"serialize","","",1,[[],["result",4]]],[11,"serialize","","",2,[[],["result",4]]]],"p":[[3,"CollisionDataset"],[3,"Collision"],[4,"Severity"]]},\ -"convert_osm":{"doc":"","i":[[0,"clip","convert_osm","",null,null],[5,"clip_map","convert_osm::clip","",null,[[["rawmap",3],["timer",3]]]],[0,"elevation","convert_osm","",null,null],[5,"add_data","convert_osm::elevation","",null,[[["rawmap",3],["timer",3]],["result",6]]],[5,"generate_input","","",null,[[["rawmap",3]],[["result",6],["vec",3]]]],[0,"extract","convert_osm","",null,null],[3,"OsmExtract","convert_osm::extract","",null,null],[12,"roads","","Unsplit roads",0,null],[12,"traffic_signals","","Traffic signals to the direction they apply",0,null],[12,"osm_node_ids","","",0,null],[12,"simple_turn_restrictions","","(ID, restriction type, from way ID, via node ID, to way …",0,null],[12,"complicated_turn_restrictions","","(relation ID, from way ID, via way ID, to way ID)",0,null],[12,"amenities","","(location, amenity)",0,null],[5,"extract_osm","","",null,[[["rawmap",3],["options",3],["timer",3]],["osmextract",3]]],[5,"is_road","","",null,[[["tags",3],["options",3]]]],[5,"is_bldg","","",null,[[["tags",3]]]],[5,"get_bldg_amenities","","",null,[[["tags",3]],[["amenity",3],["vec",3]]]],[5,"get_area_type","","",null,[[["tags",3]],[["option",4],["areatype",4]]]],[5,"find_parking_aisles","","",null,[[["rawmap",3],["vec",3]]]],[5,"service_road_crosses_parking_lot","","",null,[[["rawmap",3],["rawroad",3],["vec",3]]]],[0,"osm_geom","convert_osm","Utilities for extracting concrete geometry from OSM …",null,null],[5,"get_multipolygon_members","convert_osm::osm_geom","",null,[[["relation",3],["relationid",3],["document",3]],["vec",3]]],[5,"glue_multipolygon","","Take a bunch of partial PolyLines and attempt to glue …",null,[[["option",4],["relationid",3],["vec",3],["ring",3]],[["polygon",3],["vec",3]]]],[5,"glue_to_boundary","","",null,[[["polyline",3],["ring",3]],[["polygon",3],["option",4]]]],[5,"multipoly_geometry","","",null,[[["relation",3],["relationid",3],["document",3]],[["result",6],["polygon",3]]]],[0,"parking","convert_osm","",null,null],[17,"DIRECTED_ROAD_THICKNESS","convert_osm::parking","",null,null],[5,"apply_parking","","",null,[[["rawmap",3],["options",3],["timer",3]]]],[5,"use_parking_hints","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"use_offstreet_parking","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"apply_private_offstreet_parking","","",null,[[["rawmap",3],["privateoffstreetparking",4]]]],[0,"reader","convert_osm","",null,null],[3,"Document","convert_osm::reader","",null,null],[12,"gps_bounds","","",1,null],[12,"nodes","","",1,null],[12,"ways","","",1,null],[12,"relations","","",1,null],[3,"Node","","",null,null],[12,"pt","","",2,null],[12,"tags","","",2,null],[3,"Way","","",null,null],[12,"nodes","","",3,null],[12,"pts","","",3,null],[12,"tags","","",3,null],[3,"Relation","","",null,null],[12,"tags","","",4,null],[12,"members","","Role, member",4,null],[5,"read","","",null,[[["gpsbounds",3],["timer",3]],[["document",3],["result",6]]]],[5,"read_tags","","",null,[[["node",3]],["tags",3]]],[5,"scrape_bounds","","",null,[[["document",3]],["gpsbounds",3]]],[0,"snappy","convert_osm","",null,null],[5,"snap_cycleways","convert_osm::snappy","Attempt to snap separately mapped cycleways to main …",null,[[["rawmap",3],["timer",3]]]],[5,"dump_output","","",null,[[["rawmap",3],["wayid",3],["hashmap",3],["btreemap",3],["multimap",3]]]],[5,"v1","","",null,[[["hashmap",3],["rawmap",3],["btreemap",3]],[["wayid",3],["multimap",3]]]],[0,"split_ways","convert_osm","",null,null],[5,"split_up_roads","convert_osm::split_ways","Returns amenities and a mapping of all points to split …",null,[[["rawmap",3],["osmextract",3],["timer",3]]]],[5,"dedupe_angles","","",null,[[["pt2d",3],["vec",3]],[["pt2d",3],["vec",3]]]],[5,"should_collapse_roundabout","","Many \\\"roundabouts\\\" like …",null,[[["rawroad",3]]]],[0,"transit","convert_osm","",null,null],[5,"extract_route","convert_osm::transit","",null,[[["relation",3],["relationid",3],["polygon",3],["document",3]],[["option",4],["rawbusroute",3]]]],[5,"glue_route","","",null,[[["wayid",3],["vec",3],["document",3]],[["result",6],["vec",3]]]],[5,"snap_bus_stops","","",null,[[["rawmap",3],["hashmap",3],["rawbusroute",3]],[["result",6],["rawbusroute",3]]]],[3,"Options","convert_osm","",null,null],[12,"osm_input","","",5,null],[12,"name","","",5,null],[12,"clip","","The path to an osmosis boundary polygon. Highly …",5,null],[12,"map_config","","",5,null],[12,"onstreet_parking","","",5,null],[12,"public_offstreet_parking","","",5,null],[12,"private_offstreet_parking","","",5,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so. …",5,null],[12,"extra_buildings","","If provided, read polygons from this GeoJSON file and add …",5,null],[4,"OnstreetParking","","What roads will have on-street parking lanes? Data from …",null,null],[13,"JustOSM","","If not tagged, there won\'t be parking.",6,null],[13,"Blockface","","If OSM data is missing, then try to match data from …",6,null],[13,"SomeAdditionalWhereNoData","","If OSM data is missing, then infer parking lanes on some …",6,null],[12,"pct","convert_osm::OnstreetParking","[0, 100]",7,null],[4,"PublicOffstreetParking","convert_osm","How many spots are available in public parking garages?",null,null],[13,"None","","",8,null],[13,"GIS","","Pull data from …",8,null],[4,"PrivateOffstreetParking","","If a building doesn\'t have anything from …",null,null],[13,"FixedPerBldg","","",9,null],[5,"convert","","",null,[[["options",3],["timer",3]],["rawmap",3]]],[5,"use_amenities","","",null,[[["rawmap",3],["timer",3],["vec",3]]]],[5,"add_extra_buildings","","",null,[[["rawmap",3]],["result",6]]],[11,"from","convert_osm::extract","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","convert_osm::reader","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","convert_osm","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_owned","","",6,[[]]],[11,"clone_into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"clone","","",6,[[],["onstreetparking",4]]],[11,"clone","","",8,[[],["publicoffstreetparking",4]]],[11,"clone","","",9,[[],["privateoffstreetparking",4]]],[11,"serialize","","",6,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]]],"p":[[3,"OsmExtract"],[3,"Document"],[3,"Node"],[3,"Way"],[3,"Relation"],[3,"Options"],[4,"OnstreetParking"],[13,"SomeAdditionalWhereNoData"],[4,"PublicOffstreetParking"],[4,"PrivateOffstreetParking"]]},\ +"convert_osm":{"doc":"","i":[[0,"clip","convert_osm","",null,null],[5,"clip_map","convert_osm::clip","",null,[[["rawmap",3],["timer",3]]]],[0,"elevation","convert_osm","",null,null],[5,"add_data","convert_osm::elevation","",null,[[["rawmap",3],["timer",3]],["result",6]]],[5,"generate_input","","",null,[[["rawmap",3]],[["result",6],["vec",3]]]],[5,"scrape_output","","",null,[[["rawmap",3],["vec",3],["originalroad",3]],["result",6]]],[0,"extract","convert_osm","",null,null],[3,"OsmExtract","convert_osm::extract","",null,null],[12,"roads","","Unsplit roads",0,null],[12,"traffic_signals","","Traffic signals to the direction they apply",0,null],[12,"osm_node_ids","","",0,null],[12,"simple_turn_restrictions","","(ID, restriction type, from way ID, via node ID, to way …",0,null],[12,"complicated_turn_restrictions","","(relation ID, from way ID, via way ID, to way ID)",0,null],[12,"amenities","","(location, amenity)",0,null],[5,"extract_osm","","",null,[[["rawmap",3],["timer",3],["options",3]],["osmextract",3]]],[5,"is_road","","",null,[[["tags",3],["options",3]]]],[5,"is_bldg","","",null,[[["tags",3]]]],[5,"get_bldg_amenities","","",null,[[["tags",3]],[["amenity",3],["vec",3]]]],[5,"get_area_type","","",null,[[["tags",3]],[["option",4],["areatype",4]]]],[5,"find_parking_aisles","","",null,[[["rawmap",3],["vec",3]]]],[5,"service_road_crosses_parking_lot","","",null,[[["rawmap",3],["vec",3],["rawroad",3]]]],[0,"osm_geom","convert_osm","Utilities for extracting concrete geometry from OSM …",null,null],[5,"get_multipolygon_members","convert_osm::osm_geom","",null,[[["relationid",3],["relation",3],["document",3]],["vec",3]]],[5,"glue_multipolygon","","Take a bunch of partial PolyLines and attempt to glue …",null,[[["relationid",3],["option",4],["vec",3],["ring",3]],[["polygon",3],["vec",3]]]],[5,"glue_to_boundary","","",null,[[["polyline",3],["ring",3]],[["polygon",3],["option",4]]]],[5,"multipoly_geometry","","",null,[[["relationid",3],["relation",3],["document",3]],[["result",6],["polygon",3]]]],[0,"parking","convert_osm","",null,null],[17,"DIRECTED_ROAD_THICKNESS","convert_osm::parking","",null,null],[5,"apply_parking","","",null,[[["rawmap",3],["timer",3],["options",3]]]],[5,"use_parking_hints","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"use_offstreet_parking","","",null,[[["rawmap",3],["timer",3],["string",3]]]],[5,"apply_private_offstreet_parking","","",null,[[["rawmap",3],["privateoffstreetparking",4]]]],[0,"reader","convert_osm","",null,null],[3,"Document","convert_osm::reader","",null,null],[12,"gps_bounds","","",1,null],[12,"nodes","","",1,null],[12,"ways","","",1,null],[12,"relations","","",1,null],[3,"Node","","",null,null],[12,"pt","","",2,null],[12,"tags","","",2,null],[3,"Way","","",null,null],[12,"nodes","","",3,null],[12,"pts","","",3,null],[12,"tags","","",3,null],[3,"Relation","","",null,null],[12,"tags","","",4,null],[12,"members","","Role, member",4,null],[5,"read","","",null,[[["gpsbounds",3],["timer",3]],[["result",6],["document",3]]]],[5,"read_tags","","",null,[[["node",3]],["tags",3]]],[5,"scrape_bounds","","",null,[[["document",3]],["gpsbounds",3]]],[0,"snappy","convert_osm","",null,null],[5,"snap_cycleways","convert_osm::snappy","Attempt to snap separately mapped cycleways to main …",null,[[["rawmap",3],["timer",3]]]],[5,"dump_output","","",null,[[["btreemap",3],["rawmap",3],["hashmap",3],["wayid",3],["multimap",3]]]],[5,"v1","","",null,[[["btreemap",3],["rawmap",3],["hashmap",3]],[["multimap",3],["wayid",3]]]],[0,"split_ways","convert_osm","",null,null],[5,"split_up_roads","convert_osm::split_ways","Returns amenities and a mapping of all points to split …",null,[[["rawmap",3],["osmextract",3],["timer",3]]]],[5,"dedupe_angles","","",null,[[["pt2d",3],["vec",3]],[["pt2d",3],["vec",3]]]],[5,"should_collapse_roundabout","","Many \\\"roundabouts\\\" like …",null,[[["rawroad",3]]]],[0,"transit","convert_osm","",null,null],[5,"extract_route","convert_osm::transit","",null,[[["relationid",3],["relation",3],["document",3],["polygon",3]],[["option",4],["rawbusroute",3]]]],[5,"glue_route","","",null,[[["wayid",3],["vec",3],["document",3]],[["result",6],["vec",3]]]],[5,"snap_bus_stops","","",null,[[["rawmap",3],["hashmap",3],["rawbusroute",3]],[["result",6],["rawbusroute",3]]]],[3,"Options","convert_osm","",null,null],[12,"osm_input","","",5,null],[12,"name","","",5,null],[12,"clip","","The path to an osmosis boundary polygon. Highly …",5,null],[12,"map_config","","",5,null],[12,"onstreet_parking","","",5,null],[12,"public_offstreet_parking","","",5,null],[12,"private_offstreet_parking","","",5,null],[12,"include_railroads","","OSM railway=rail will be included as light rail if so. …",5,null],[12,"extra_buildings","","If provided, read polygons from this GeoJSON file and add …",5,null],[4,"OnstreetParking","","What roads will have on-street parking lanes? Data from …",null,null],[13,"JustOSM","","If not tagged, there won\'t be parking.",6,null],[13,"Blockface","","If OSM data is missing, then try to match data from …",6,null],[13,"SomeAdditionalWhereNoData","","If OSM data is missing, then infer parking lanes on some …",6,null],[12,"pct","convert_osm::OnstreetParking","[0, 100]",7,null],[4,"PublicOffstreetParking","convert_osm","How many spots are available in public parking garages?",null,null],[13,"None","","",8,null],[13,"GIS","","Pull data from …",8,null],[4,"PrivateOffstreetParking","","If a building doesn\'t have anything from …",null,null],[13,"FixedPerBldg","","",9,null],[5,"convert","","",null,[[["options",3],["timer",3]],["rawmap",3]]],[5,"use_amenities","","",null,[[["rawmap",3],["timer",3],["vec",3]]]],[5,"add_extra_buildings","","",null,[[["rawmap",3]],["result",6]]],[11,"from","convert_osm::extract","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"from","convert_osm::reader","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"from","","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"from","convert_osm","",5,[[]]],[11,"into","","",5,[[]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_owned","","",6,[[]]],[11,"clone_into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"clone","","",6,[[],["onstreetparking",4]]],[11,"clone","","",8,[[],["publicoffstreetparking",4]]],[11,"clone","","",9,[[],["privateoffstreetparking",4]]],[11,"serialize","","",6,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","","",9,[[],["result",4]]],[11,"deserialize","","",6,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","","",9,[[],["result",4]]]],"p":[[3,"OsmExtract"],[3,"Document"],[3,"Node"],[3,"Way"],[3,"Relation"],[3,"Options"],[4,"OnstreetParking"],[13,"SomeAdditionalWhereNoData"],[4,"PublicOffstreetParking"],[4,"PrivateOffstreetParking"]]},\ "dump_map":{"doc":"","i":[[5,"main","dump_map","",null,[[]]]],"p":[]},\ "dump_scenario":{"doc":"","i":[[5,"main","dump_scenario","",null,[[]]]],"p":[]},\ "extract_cities":{"doc":"Extracts all cities from a large .osm file.","i":[[5,"main","extract_cities","",null,[[]]]],"p":[]},\ diff --git a/rustdoc/src/convert_osm/elevation.rs.html b/rustdoc/src/convert_osm/elevation.rs.html index 74d170d7c5..1683e7def1 100644 --- a/rustdoc/src/convert_osm/elevation.rs.html +++ b/rustdoc/src/convert_osm/elevation.rs.html @@ -1,102 +1,132 @@ elevation.rs - source
 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
+                Change settings
  1
+  2
+  3
+  4
+  5
+  6
+  7
+  8
+  9
+ 10
+ 11
+ 12
+ 13
+ 14
+ 15
+ 16
+ 17
+ 18
+ 19
+ 20
+ 21
+ 22
+ 23
+ 24
+ 25
+ 26
+ 27
+ 28
+ 29
+ 30
+ 31
+ 32
+ 33
+ 34
+ 35
+ 36
+ 37
+ 38
+ 39
+ 40
+ 41
+ 42
+ 43
+ 44
+ 45
+ 46
+ 47
+ 48
+ 49
+ 50
+ 51
+ 52
+ 53
+ 54
+ 55
+ 56
+ 57
+ 58
+ 59
+ 60
+ 61
+ 62
+ 63
+ 64
+ 65
+ 66
+ 67
+ 68
+ 69
+ 70
+ 71
+ 72
+ 73
+ 74
+ 75
+ 76
+ 77
+ 78
+ 79
+ 80
+ 81
+ 82
+ 83
+ 84
+ 85
+ 86
+ 87
+ 88
+ 89
+ 90
+ 91
+ 92
+ 93
+ 94
+ 95
+ 96
+ 97
+ 98
+ 99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
 
 use std::fs::File;
-use std::io::{BufWriter, Write};
+use std::io::{BufRead, BufReader, BufWriter, Write};
 use std::process::Command;
 
 use anyhow::Result;
@@ -147,11 +177,15 @@
     );
     timer.stop("run elevation_lookups");
 
-    // TODO Scrape output
+    timer.start("grab output");
+    scrape_output(map, ids)?;
+    timer.stop("grab output");
 
     // Clean up temporary files
     std::fs::remove_file("elevation_input/query")?;
     std::fs::remove_dir("elevation_input")?;
+    std::fs::remove_file("elevation_output/query")?;
+    std::fs::remove_dir("elevation_output")?;
 
     timer.stop("add elevation data");
     Ok(())
@@ -188,5 +222,31 @@
     }
     Ok(ids)
 }
+
+fn scrape_output(map: &mut RawMap, ids: Vec<OriginalRoad>) -> Result<()> {
+    let num_ids = ids.len();
+    let mut cnt = 0;
+    for (line, id) in BufReader::new(File::open("elevation_output/query")?)
+        .lines()
+        .zip(ids)
+    {
+        let line = line?;
+        let mut values = Vec::new();
+        for x in line.split('\t') {
+            values.push(Distance::meters(x.parse::<f64>()?));
+        }
+        if values.len() != 4 {
+            bail!("Elevation output line \"{}\" doesn't have 4 numbers", line);
+        }
+        // TODO Also put total_climb and total_descent on the roads
+        map.intersections.get_mut(&id.i1).unwrap().elevation = values[0];
+        map.intersections.get_mut(&id.i2).unwrap().elevation = values[1];
+        cnt += 1;
+    }
+    if cnt != num_ids {
+        bail!("Output had {} lines, but we made {} queries", cnt, num_ids);
+    }
+    Ok(())
+}
 
\ No newline at end of file diff --git a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html index a4c501c733..9b8b285cb7 100644 --- a/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html +++ b/rustdoc/src/game/home/runner/work/abstreet/abstreet/target/debug/build/game-a95c4551e63dceca/out/built.rs.html @@ -122,7 +122,7 @@ /// The output of `rustdoc -V` pub const RUSTDOC_VERSION: &str = "rustdoc 1.50.0 (cb75ad5db 2021-02-10)"; /// The built-time in RFC2822, UTC -pub const BUILT_TIME_UTC: &str = "Thu, 18 Mar 2021 18:27:27 +0000"; +pub const BUILT_TIME_UTC: &str = "Fri, 19 Mar 2021 00:57:58 +0000"; /// The target architecture, given by `cfg!(target_arch)`. pub const CFG_TARGET_ARCH: &str = "x86_64"; /// The endianness, given by `cfg!(target_endian)`. diff --git a/rustdoc/src/map_editor/model.rs.html b/rustdoc/src/map_editor/model.rs.html index 057e03b97e..7f82a55dec 100644 --- a/rustdoc/src/map_editor/model.rs.html +++ b/rustdoc/src/map_editor/model.rs.html @@ -601,8 +601,6 @@ 598 599 600 -601 -602
 use std::collections::HashMap;
 use std::io::Write;
@@ -797,8 +795,6 @@
             RawIntersection {
                 point,
                 intersection_type: IntersectionType::StopSign,
-                // TODO If this isn't a synthetic map, load the elevation data and grab a real
-                // value.
                 elevation: Distance::ZERO,
             },
         );