mirror of
https://github.com/a-b-street/abstreet.git
synced 2024-12-24 23:15:24 +03:00
Fix a bug in transit snapping introduced by 163244ace9
. Regenerating all maps, also bringing in a Tempe OSM fix...
The deadend trimming is too enthusiastic, getting rid of some unsnapped cycleways and things connecting to the map border. Will iterate on it this week; net benefit for now.
This commit is contained in:
parent
9e68c22d67
commit
ffcf0a8d66
1792
data/MANIFEST.json
1792
data/MANIFEST.json
File diff suppressed because it is too large
Load Diff
@ -12,28 +12,32 @@ if [ "$SITE" == "" ]; then
|
||||
fi
|
||||
CITY=`echo $SITE | sed -r 's/-/_/g'`
|
||||
|
||||
# Follow https://a-b-street.github.io/docs/user/new_city.html and import as a new city.
|
||||
cp -Rv importer/config/gb/leeds importer/config/gb/$CITY
|
||||
rm -fv importer/config/gb/$CITY/*.poly
|
||||
wget https://raw.githubusercontent.com/cyipt/actdev/main/data-small/$SITE/small-study-area.geojson
|
||||
cargo run --bin geojson_to_osmosis < small-study-area.geojson
|
||||
rm -fv small-study-area.geojson
|
||||
mv boundary0.poly importer/config/gb/$CITY/center.poly
|
||||
GEOFABRIK=`cargo run --bin pick_geofabrik importer/config/gb/$CITY/center.poly`
|
||||
echo "Geofabrik URL is $GEOFABRIK"
|
||||
perl -pi -e "s#\"osm_url\": \".*\"#\"osm_url\": \"$GEOFABRIK\"#" importer/config/gb/$CITY/cfg.json
|
||||
# Disable to just regenerate scenarios
|
||||
# (TODO But still have to switch the above to handle city as input)
|
||||
if false; then
|
||||
# Follow https://a-b-street.github.io/docs/user/new_city.html and import as a new city.
|
||||
cp -Rv importer/config/gb/leeds importer/config/gb/$CITY
|
||||
rm -fv importer/config/gb/$CITY/*.poly
|
||||
wget https://raw.githubusercontent.com/cyipt/actdev/main/data-small/$SITE/small-study-area.geojson
|
||||
cargo run --bin geojson_to_osmosis < small-study-area.geojson
|
||||
rm -fv small-study-area.geojson
|
||||
mv boundary0.poly importer/config/gb/$CITY/center.poly
|
||||
GEOFABRIK=`cargo run --bin pick_geofabrik importer/config/gb/$CITY/center.poly`
|
||||
echo "Geofabrik URL is $GEOFABRIK"
|
||||
perl -pi -e "s#\"osm_url\": \".*\"#\"osm_url\": \"$GEOFABRIK\"#" importer/config/gb/$CITY/cfg.json
|
||||
|
||||
wget https://raw.githubusercontent.com/cyipt/actdev/main/data-small/$SITE/site.geojson -O data/system/study_areas/$SITE.geojson
|
||||
wget https://raw.githubusercontent.com/cyipt/actdev/main/data-small/$SITE/site.geojson -O data/system/study_areas/$SITE.geojson
|
||||
|
||||
./import.sh --raw --map --city=gb/$CITY
|
||||
|
||||
# Procedurally generate houses, if needed
|
||||
if cargo run --release --bin generate_houses -- --map=data/system/gb/$CITY/maps/center.bin --num_required=1000 --rng_seed=42 --out=data/input/gb/$CITY/procgen_houses.json; then
|
||||
# Update the importer config, and import again
|
||||
perl -pi -e "s#\"extra_buildings\": null#\"extra_buildings\": \"data/input/gb/$CITY/procgen_houses.json\"#" importer/config/gb/$CITY/cfg.json
|
||||
./import.sh --raw --map --city=gb/$CITY
|
||||
else
|
||||
echo "$CITY already had enough houses"
|
||||
|
||||
# Procedurally generate houses, if needed
|
||||
if cargo run --release --bin generate_houses -- --map=data/system/gb/$CITY/maps/center.bin --num_required=1000 --rng_seed=42 --out=data/input/gb/$CITY/procgen_houses.json; then
|
||||
# Update the importer config, and import again
|
||||
perl -pi -e "s#\"extra_buildings\": null#\"extra_buildings\": \"data/input/gb/$CITY/procgen_houses.json\"#" importer/config/gb/$CITY/cfg.json
|
||||
./import.sh --raw --map --city=gb/$CITY
|
||||
else
|
||||
echo "$CITY already had enough houses"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Import the scenarios
|
||||
|
@ -97,7 +97,7 @@ fn make_route(
|
||||
// Start or end at a border?
|
||||
let mut end_border = None;
|
||||
let start = if let Some(i) = r.border_start {
|
||||
let i = map.get_i(map.find_i_by_osm_id(i).unwrap());
|
||||
let i = map.get_i(map.find_i_by_osm_id(i)?);
|
||||
if !i.is_border() {
|
||||
panic!("Route starts at {}, but isn't a border?", i.orig_id);
|
||||
}
|
||||
@ -117,7 +117,7 @@ fn make_route(
|
||||
pick_start_lane(map.get_bs(stops[0]).driving_pos, route_type, map)?
|
||||
};
|
||||
if let Some(i) = r.border_end {
|
||||
let i = map.get_i(map.find_i_by_osm_id(i).unwrap());
|
||||
let i = map.get_i(map.find_i_by_osm_id(i)?);
|
||||
if !i.is_border() {
|
||||
panic!("Route ends at {}, but isn't a border?", i.orig_id);
|
||||
}
|
||||
|
@ -4,76 +4,76 @@
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 76618,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 45348936.607399315
|
||||
"total_trip_duration_seconds": 44275253.93770049
|
||||
},
|
||||
{
|
||||
"map": "greenlake (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 136872,
|
||||
"cancelled_trips": 6,
|
||||
"total_trip_duration_seconds": 78115415.93059961
|
||||
"total_trip_duration_seconds": 79909332.25669958
|
||||
},
|
||||
{
|
||||
"map": "montlake (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 36723,
|
||||
"cancelled_trips": 73,
|
||||
"total_trip_duration_seconds": 19722990.5707001
|
||||
"total_trip_duration_seconds": 19621200.75680009
|
||||
},
|
||||
{
|
||||
"map": "lakeslice (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 260896,
|
||||
"cancelled_trips": 4920,
|
||||
"total_trip_duration_seconds": 202776043.2725004
|
||||
"finished_trips": 260885,
|
||||
"cancelled_trips": 4931,
|
||||
"total_trip_duration_seconds": 203711812.49189684
|
||||
},
|
||||
{
|
||||
"map": "qa (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 53866,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 19782205.004199944
|
||||
"total_trip_duration_seconds": 19782122.309199944
|
||||
},
|
||||
{
|
||||
"map": "rainier_valley (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 68100,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 41700355.76079956
|
||||
"total_trip_duration_seconds": 41546431.60739942
|
||||
},
|
||||
{
|
||||
"map": "wallingford (in seattle (us))",
|
||||
"scenario": "weekday",
|
||||
"finished_trips": 133431,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 68917026.22190017
|
||||
"total_trip_duration_seconds": 68673973.15870081
|
||||
},
|
||||
{
|
||||
"map": "center (in poundbury (gb))",
|
||||
"scenario": "base",
|
||||
"finished_trips": 8188,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 7337743.810400017
|
||||
"finished_trips": 8544,
|
||||
"cancelled_trips": 4,
|
||||
"total_trip_duration_seconds": 7808006.265999998
|
||||
},
|
||||
{
|
||||
"map": "center (in poundbury (gb))",
|
||||
"scenario": "go_active",
|
||||
"finished_trips": 8188,
|
||||
"cancelled_trips": 0,
|
||||
"total_trip_duration_seconds": 9507825.085000018
|
||||
"finished_trips": 8550,
|
||||
"cancelled_trips": 8,
|
||||
"total_trip_duration_seconds": 9566038.715599986
|
||||
},
|
||||
{
|
||||
"map": "center (in poundbury (gb))",
|
||||
"scenario": "base_with_bg",
|
||||
"finished_trips": 23378,
|
||||
"cancelled_trips": 256,
|
||||
"total_trip_duration_seconds": 21850732.632599995
|
||||
"finished_trips": 23679,
|
||||
"cancelled_trips": 309,
|
||||
"total_trip_duration_seconds": 22533207.688299924
|
||||
},
|
||||
{
|
||||
"map": "center (in poundbury (gb))",
|
||||
"scenario": "go_active_with_bg",
|
||||
"finished_trips": 23378,
|
||||
"cancelled_trips": 256,
|
||||
"total_trip_duration_seconds": 24047872.2907001
|
||||
"finished_trips": 23685,
|
||||
"cancelled_trips": 313,
|
||||
"total_trip_duration_seconds": 24392474.70530001
|
||||
}
|
||||
]
|
Loading…
Reference in New Issue
Block a user