Dustin Carlino
190eaef251
Swap a femur with a tibia. A questionable trade, but I'm calling it
...
progress.
2021-08-05 18:51:19 -07:00
Dustin Carlino
c71c1b91dc
Trying to fix corner curbs and failing, but made some maybe useful geom
...
API additions.
And not drawing curbs for footways. #715
2021-07-31 19:46:37 -07:00
Dustin Carlino
a4906a2953
More flag-guarded color scheme progress towards #715 :
...
- choosing some building colors
- proper unzoomed road/intersection outlines
- adjusting curb color based on road rank (for arterials, it was the
same grey!)
2021-07-28 12:12:01 -07:00
Dustin Carlino
835e4bf7a7
Iterate on the curb rendering for #715 . A simple start to it already happens to exist for an old color scheme experiment.
...
Still some issues with shoulders, but improved in many cases.
2021-07-25 13:08:14 -07:00
Dustin Carlino
7399f2aff2
Prettyprint durations with one decimal place, not two. Loading screens are a little too intense otherwise. This was changed in #699 because the variable name was wrong.
2021-07-25 10:53:57 -07:00
Dustin Carlino
0bce76e172
Parallelize commuter pattern calculation, to speed up the new concave hull algorithm on native
2021-07-25 10:20:27 -07:00
Michael Kirk
760d75e12a
Use concave hull for neighborhoods ( #716 )
...
Also, for sidewalks, interpolate points every n-meters to get a better
concave hull.
2021-07-25 10:11:12 -07:00
Dustin Carlino
d142b4fbd0
Refactor lots of the places walking along a PolyLine with a step size
...
Verified no behavioral change using the screenshot test. (Which only had
the driveway diff from b3ce53aa5f
)
2021-07-16 14:17:08 -07:00
Michael Kirk
5ab8109f3b
add tests, fix remainder rounding in parts
2021-07-13 22:51:18 -07:00
Michael Kirk
7bf3f03251
add y-axis to aggregate duration table
2021-07-13 22:51:18 -07:00
Michael Kirk
43a3f2cdc2
round duration strings to largest unit
2021-07-13 22:51:18 -07:00
Michael Kirk
78a840edfa
return Duration not mins
2021-07-13 22:51:18 -07:00
Dustin Carlino
66be29d752
Import a new city using Overpass, instead of Geofabrik + clipping. #523
...
The returned XML seems to be missing lots of stuff, but it's much faster
and wasn't hard to wire up. I'll look into fixing the query...
2021-07-12 14:06:54 -07:00
Dustin Carlino
da704b4546
Extend the parking thought bubbles to handle people climbing steep hills.
...
(And some clippy fixes)
2021-07-10 17:14:10 -07:00
Dustin Carlino
184593094e
Also round up the X axis for the elevation plot, and lower the number of
...
line plot labels by default
2021-07-09 09:23:56 -07:00
Dustin Carlino
2fad01d729
Use a fixed maximum for the Y scale of the elevation profile, based on a
...
map's max height. This helps compare elevation profiles before/after map
edits.
2021-07-09 09:23:56 -07:00
Dustin Carlino
bf316fa99c
Fix a crash in the trip info panel. If you happen to open a trip of a
...
car waiting to spawn, its total path distance is briefly 0.
Also silence the lane-changing info for the moment, until work resumes
there.
2021-07-03 08:28:16 -07:00
Dustin Carlino
137e9a0c2c
Fix up some places affected by the f64 serialization:
...
- offstreet_parking_length in importer config
- backwards compatibility for map edits
- fixing up the baked-in proposals
- working around a few PolyLine bugs that happen with the new rounding
- Don't regenerate actdev scenarios yet -- the upstream JSON format is
out of date, will have to fix separately.
2021-06-30 06:35:42 -07:00
Dustin Carlino
057ac5d020
Serialize trimmed f64's in the geom crate as i32, since the f64's are
...
trimmed to 4 decimal places anyway. Do this for Pt2D, Distance,
Duration, Speed, Time.
Regenerating everything...
2021-06-30 06:35:42 -07:00
Dustin Carlino
786bb1159d
Fix the lane widths appearing the same in the dropdown due to rounding. #597
2021-06-20 10:30:07 -07:00
Dustin Carlino
0bcf01fd05
Avoid crashing in recalculate_intersection_polygon due to polylines not
...
containing some points. Happens at i524 in Arboretum and in the West
Seattle proposal.
I don't understand yet why this is possible in the first place, but
crashing is pretty bad in the meantime.
2021-06-19 11:29:01 -07:00
Dustin Carlino
8f199177f5
Upgrade to Rust 1.53
...
- arrays are now iterable directly
- switch to using BTree{Set,Map}::retain!
- a round of clippy
- regenerate scenarios and prebaked data; not sure why, but there's a
diff
2021-06-17 23:04:35 -07:00
Rémi Lauzier
1a4b997818
Fix some clippy warnings
2021-06-16 16:21:35 -07:00
Dustin Carlino
321e7cd0ee
Allow exiting a driveway onto any lane (in the same road direction). #555
...
- Support this at the pathfinding level, when transforming v2->v1
- Adjust how the vehicle's body is rendered as it exits a driveway onto
a farther lane
No support yet for blocking any intermediate lanes; vehicles may clip
through each other without any conflict. Planning to add that
separately.
Regenerating all scenarios and prebaked data...
2021-06-16 15:46:09 -07:00
Dustin Carlino
484720d648
Add code to include pass-through trips (border->border) from Soundcast data. #665
...
... But leave it disabled, until we can handle such larger file sizes
and levels of traffic.
And although this should be a behavioral no-op, there's a diff in the
scenario files, so recalculate them.
2021-06-14 16:23:14 -07:00
Dustin Carlino
889c500eb1
Force geojson to use geo-types feature everywhere. This lets different
...
binaries properly share workspace dependencies.
See
https://www.reddit.com/r/rust/comments/nvd6y7/common_crates_in_cargo_workspace_recompiled_due/
for the full story behind this mess.
I'm going to keep repeating this process until I get game and importer
to share dependencies again.
2021-06-09 09:48:53 -07:00
Dustin Carlino
d014098f59
Fix an extremely naive implementation of calculating average angle,
...
which was causing bizarre turn lane arrows in Tempe.
2021-06-01 09:52:40 -07:00
Dustin Carlino
dc1ce15c30
Heavily penalize GMNS snapping if the bearing doesn't match the movement. #626
...
University/Mill looks great now.
2021-05-28 15:56:04 -07:00
Dustin Carlino
a6e707eb8a
Upgrade more dependencies.
...
(Can't upgrade winit yet, because glutin doesn't have a crates.io
release that's caught up)
2021-05-22 16:36:57 -07:00
Vinzent Steinberg
a1899e29f8
Update dependencies ( #656 )
...
* Update dependencies
* Use github for polylabel, to make all dependencies use geo 0.18, not a mix of 0.18 and 0.17
* Downgrade lyon to avoid a crash
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
2021-05-22 16:23:06 -07:00
Dustin Carlino
ef90721741
Fix missing study area polygons on the web. The refactor to Polygon::from_geojson_file introduced filesystem IO to the geom crate. Instead, we need to be explicit about how we do file IO.
...
Also fix some clippy errors
2021-05-20 14:33:04 -07:00
Dustin Carlino
1fe60eb8bb
Automatically save/restore user settings. #216
...
On a best-effort basis, of course. If the format changes, just start
fresh.
2021-05-17 10:34:13 -07:00
Vinzent Steinberg
ac62dde925
Prefer turbofish over temporary binding when collecting
2021-05-15 14:24:08 -07:00
Vinzent Steinberg
9d17faa878
Prefer slices over reference to owned type
2021-05-15 14:24:08 -07:00
Dustin Carlino
1edbca6509
Refactor most of the places extracting polygons from geojson files ( #644 )
2021-05-15 09:05:28 -07:00
Vinzent Steinberg
fd3b0e2a14
Fix compilation failures and most clippy warnings ( #642 )
...
* abstutil: Fix compilation failure
* map_gui: Fix compilation
* traffic_signal_data: Fix compilation failure
* map_model: Fix compilation failure
* abstutil: Fix doctests
* abstio: Fix most clippy warnings
* abstutil: Fix most clippy warnings
* collisions: Fix clippy warning
* convert_osm: Fix clippy warnings
* sim: Fix most clippy warnings
* geom: Fix clippy warnings
* kml: Fix clippy warnings
* map_model: Fix most clippy warnings
* fifteen_min: Fix clippy warnings
* game: Fix many clippy warnings
* Disable some noisy clippy warnings
* headless: Fix clippy warnings
* importer: Fix clippy warnings
* map_editor: Fix clippy warnings
* map_gui: Fix clippy warnings
* osm_viewer: Fix clippy warnings
* parking_mapper: Fix most clippy warnings
* popdat: Fix clippy warnings
* santa: Fix clippy warnings
* sumo: Fix clippy warnings
* traffic_seitan: Fix clippy warning
* updater: Fix clippy warnings
* widgetry: Fix clippy warnings
* tests: Fix some clippy warnings
* Fix compilation on stable Rust
* Simplify unwrapping
* Make use of `Entry` more readable
* Fix formatting
* Fix code that was broken in the refactoring
* Apply cargo +stable fmt
* Fix code that was broken in the refactoring, second try
* Remove `Default` impls that are equivalent to `new`
* Remove obsolete clippy wrapper
* Avoid turbofish
* Prefer `unwrap_or_else` over allowing `clippy::or_fun_call`
* Remove redundant `into_iter`
* Fix typo
* Prefer `&& false` over commenting code out
* Fix some clippy warnings
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
2021-05-14 08:32:56 -07:00
Dustin Carlino
8826af31cb
Make the CSV extra shapes parser handle WKT linestrings, so we can
...
visualize the GMNS signal timing data easily. #626
And fiddle with the KML viewer UI a bit to make it easier to inspect the
movement polylines.
2021-05-05 13:40:53 -07:00
Dustin Carlino
f400663b01
Better choices for lane width. #597 [rebuild] [release]
2021-05-02 09:11:21 -07:00
Dustin Carlino
82332ad94a
Change how durations are printed ( #633 )
2021-04-29 14:22:35 -07:00
Dustin Carlino
a09bbd37c2
Improve the geometry of some consolidated intersections by taking the
...
convex hull. In many cases, this removes interior "jaggedness".
Regenerate all data... [rebuild]
2021-04-24 12:58:05 -07:00
Dustin Carlino
b5a1eb48f2
Fix some crash with creating a rounded rectangle that seemed to happen during a loading screen. [rebuild] [release]
2021-04-15 09:13:51 -07:00
Dustin Carlino
c1ac3cf39d
Make Polygon::from_geojson preserve rings. This fixes the WIP elevation contours. #82
2021-03-25 15:15:53 -07:00
Michael Kirk
810c89eeb1
meter shows "finished trips vs baseline" instead of time ( #565 )
2021-03-15 17:10:08 -07:00
Dustin Carlino
bf8f51ae05
Consistently count hours for a time. There was some disagreement between
...
recorded analytics and code that later summed things up, making the
relative throughput layer more confusing than it is already. #85
2021-03-10 13:59:38 -08:00
Dustin Carlino
7170efbdba
Improve some gridlock cases near roundabouts particularly. #114 , #75
...
1) If a car is blocked by a conflicting turn and is part of a cycle,
wake up the car blocking it. In some cases, this wakes it up faster
and unsticks things. Otherwise, it just wastes a little bit of time.
2) If a car is part of a cycle, allow blocking-the-box.
3) Continue sorting people at a stop sign by the time they've been
waiting. But for cars "overflowing" their current lane, move them to
the front of this ordering. It unsticks one particular situation.
4) Fix wakeup_waiting entirely. Before, it was waking up protected turns
before permitted, but otherwise the ordering was arbitrary. Now actually
respect stop sign ordering. I expect this to improve many other
situations than the one I was checking.
This was all motivated by one particular roundabout in Poundbury. It
doesn't solve gridlock there, but it gets past a major blockage.
2021-03-08 17:47:01 -08:00
Dustin Carlino
aa59677ad2
Transform the UK OD and zone data from raw input into a clean structure. #556
2021-03-05 10:47:48 -08:00
Michael Kirk
9533c10137
Theme switches
...
The main button API only allows re-writing one color of the image.
Since we need to rewrite multiple colors for the switch, I introduced a
`image_batch` for buttons which lets you do all kinds of manual
fanciness, and pass the result into the button API.
2021-02-24 14:59:47 -08:00
Dustin Carlino
9b966205c9
Delete redundant implementations of min and max for geom types. They get it for free by implementing Ord.
2021-02-12 15:22:27 -08:00
Dustin Carlino
03538faf3f
A few traffic signal cleanups: ( #512 )
...
- Stop alerting when slow pedestrians can't make it through the minimum
crosswalk time
- Simpler iteration style in lagging_green.rs
- Totally delete the old brute force signal config code; it never worked
well, and the improved heuristics eliminate the need for it anyway
- Make a Duration::max function and use it in one case
2021-02-12 15:10:32 -08:00
Dustin Carlino
a5bfa55c8e
Create a tool to find the geofabrik osm.pbf file covering a particular region. Inspired by https://github.com/ropensci/osmextract . This will make importing more maps much easier, especially for cyipt/actdev#65 .
2021-02-10 12:35:59 -08:00