Dustin Carlino
fd212b474c
Get wasm running again; cargo web was hitting
...
https://github.com/koute/cargo-web/issues/217 . After adding some
debugging to that tool, discovered the problem was generic-array, pulled
in by the new geo version. Forcing that to the older version fixes
things.
2020-09-29 23:34:10 -07:00
Dustin Carlino
2ddd9a62ff
Cleanups for #346 :
...
- Add Distance::min()/max()
- Bring in log crate everywhere
- Consolidate traffic signal validation
2020-09-26 10:11:08 -07:00
Michael Kirk
d7e0225097
roll back lyon to fix crash in widgetry demo
2020-09-24 19:12:39 -07:00
Dustin Carlino
c9fbf67989
Rearrange headless API to explicitly apply edits at the same time as
...
specifying the scenario to run. #325
2020-09-24 13:14:49 -07:00
Dustin Carlino
597ef473f2
Upgrade most dependencies
2020-09-24 09:36:26 -07:00
Dustin Carlino
a17ef9cc43
Get text rendering to work on WASM! #21
...
Just a few changes to make usvg not depend on Rustybuzz (which is still
in the middle of becoming a pure Rust library). It probably only works
with English fonts, but for the moment, it moves us forward.
2020-09-20 22:50:22 -07:00
Dustin Carlino
3cc6a8ce12
And finally, a UI to tune offset between two signals! [rebuild]
2020-09-19 11:10:45 -07:00
Dustin Carlino
15af3846b1
Round driving costs for pathfinding more carefully. When we create
...
uber-turns (sequences of turns through a few intersections) due to OSM
turn restrictions, we have to be a little careful how we sum up the cost
for the entire sequence, only rounding at the end.
2020-09-18 15:39:35 -07:00
Dustin Carlino
3dcdb9ec02
Update OSM data (and fix the stage icon)
2020-09-16 10:29:51 -07:00
Dustin Carlino
6439c026ea
Set up the boilerplate for two parking impls
2020-09-15 13:27:56 -07:00
Michael Kirk
c11cecf1ac
log cleanups ( #321 )
2020-09-10 14:20:35 -07:00
Michael Kirk
f685af47a5
proletariat robot considers resident/worker capacity ( #320 )
...
proles: account for work capacity
previously all residents went to work on the map, but if the
neighborhood is mostly residential that meant they were "competing"
heavily for the scarce jobs available on the map.
with this commit, we do a better job of spreading worker/residential
demand to account for what is available, and fill in the gap with
off-map trip origins/desitinations.
e.g. if a neighborhood is mostly residential, we have folks commute off
of map. If a neighborhood is mostly commercial, we have folks commute
into the map.
2020-09-10 14:04:20 -07:00
Michael Kirk
95b01c5f9e
macos fix: flip h-scroll to conventional direction ( #310 )
2020-09-06 13:10:37 -07:00
Dustin Carlino
787b6046b6
Remove the RAM measurement utility. Only work on Linux, I'm not convinced it's correct, and the information isn't useful to see
2020-09-03 17:19:40 -07:00
Dustin Carlino
b13f5b0f4a
Move iotool things into the importer package, but keep separate binaries
2020-09-03 11:49:53 -07:00
Dustin Carlino
db23cf2d57
Update fast_paths, which implemented stall-on-demand and just about HALVED query time!
2020-09-03 11:28:38 -07:00
Michael Kirk
6482f8b0a4
util to convert geojson to osmosis polygon ( #309 )
2020-09-02 15:29:25 -07:00
Dustin Carlino
f662d9e34f
Get rid of PartialEq on all of the Sim structs. It was originally there for a unit test that simulations are deterministic, but that test is long gone. (Determinism is now tested a bit more indirectly, but usefully, by looking for diffs to prebaked results. It could also be done by diffing serialized Sims.)
2020-08-28 14:26:22 -07:00
Dustin Carlino
d8d2877c14
Fix bike lane importing on Bell St. To prevent this from gridlocking
...
lakeslice (which is still quite sensitive to tiny changes in demand
data), manually retime a signal.
2020-08-27 20:51:49 -07:00
Dustin Carlino
2935d2379b
Mechanical rename of ezgui -> widgetry, a much better name to enchant the Rust community. #253 [rebuild]
2020-08-27 10:37:04 -07:00
Kyle Huston
90cf38a522
Fail importer immediately if dependencies are missing and make gunzip etc. configurable ( #296 )
...
* Read ImporterConfiguration from .toml file if present. Also check for presence of dependency programs.
* Actually use config.osmconvert instead of hard-coded 'osmconvert'
* Add curl to checked dependencies
* Don't require all fields to be present in importer.toml configuration. Fill in defaults.
* Remove unneeded slice
* Use json for importer config and use serde(default) attribute to simplify application of defaults
* Extract re_dependencies_callable from main.rs and remove dependency on Job
* Revert change to abstutil, use struct-level default attribute
* Add importer.json to .gitignore
* Make gunzip_args string instead of Option<string>
2020-08-27 09:06:14 -07:00
Dustin Carlino
3afdb3f7e2
The JSON format for the map edits changes occasionally. Be backwards
...
compatible with old edits, automatically transforming them to match the
new format. Part of #216 and necessary to work on #234 .
2020-08-22 09:14:01 -07:00
Dustin Carlino
ad423b22e9
Remove the glium backend, now that @michaelkirk has gotten the glow native/wasm backends ship-shape. Got rid of the glutin fallback behavior for now; need to ideally upstream something there for #103
2020-08-20 16:59:54 -07:00
Dustin Carlino
7cbc0fd95c
Make a tool to dump the map in JSON.
2020-08-19 12:49:30 -07:00
Dustin Carlino
02569b1642
Get an end-to-end sample experiment working through the API and Python client
2020-08-18 12:52:38 -07:00
Dustin Carlino
a6a454d326
Add a tool to import external traffic demand data. The format and way of
...
calling the tool (not in the importer?) are just experiments right now.
2020-08-17 12:32:09 -07:00
Dustin Carlino
781f2b61bb
update Cargo.lock; the winit patch changed commit hash I think [rebuild]
2020-08-16 17:47:02 -07:00
Dustin Carlino
bef3434ac8
adjust the most egregious traffic signals downtown
2020-08-15 18:35:14 -07:00
Michael Kirk
3ed8b9cf81
Fix glium build, which was broken with: 85ad194d
...
85ad194d
introduced a patched winit.
In the glium build, we were pulling in a second version of winit (the
unpatched version, via glutin). This caused conflicts between the data
types, breaking the build.
Apparently the proper way to specify a patch like this, usable by
transitive dependencies, is via cargo's "patch" specifiers
2020-08-14 15:11:49 -07:00
Dustin Carlino
377e154a1c
Refactor the Transition enum, collapsing enum variants that were
...
combining primitive transitions into sequences.
Brief context on the state/transition system: The game crate is
organized as a stack of states, with the topmost one being active.
Transitions manipulate this stack. For example, the stack might look
like: [main menu, sandbox mode, edit mode, traffic signal editor, signal
picker]
2020-08-14 14:38:50 -07:00
Michael Kirk
e5b08c71c0
Fix HiDPI screens for wasm
...
Fixes upstream winit bug
2020-08-14 14:13:18 -07:00
Dustin Carlino
25ee39af89
Prepare to flag-guard an experiment to handle uber-turns differently
...
when allowing a car to start a turn. It causes
https://github.com/dabreegster/abstreet/pull/276#discussion_r470269394
and also the lakeslice scenario to gridlock (a regression that began a
few weeks ago). But keep the flag on for now, to keep the montlake
scenaro running at least.
https://dabreegster.github.io/abstreet/trafficsim/gridlock.html has
notes about the many different causes and in-progress fixes for
gridlock. This experiment hasn't been explained very well yet, but
roughly it treats a cluster of traffic signals as one, so that once a
vehicle gains access through the first light, they guarantee immediate
access through the entire sequence. This interacts with the "don't block
the box" behavior (don't start a turn if you might get stuck in the
intersection) strangely.
While attempting to get this rollback to work, I also had to manually
redraw the traffic lights for a few manually specified intersections.
They became out-of-date a few weeks ago when I cleaned up the OSM
geometry upstream and the referenced IDs changed, and I hadn't bothered
to re-time the signals. Luckily, with the new multi-signal editor,
redrawing the timing was much easier than originally!
Regenerated all data and lots of bus routes vanished. Plan to get back
to that project soon.
2020-08-14 11:33:25 -07:00
Dustin Carlino
1d46845dc9
Upgrade glow. No noticeable change on Linux, might help on Mac.
2020-08-13 08:26:49 -07:00
Dustin Carlino
8ce2568280
turn the headless runner into a demo of a JSON API, for #245 ( #268 )
...
turn the headless runner into a demo of a JSON API, for #245
2020-08-11 16:44:19 -07:00
Dustin Carlino
eee179ce8a
store offset in the permanent signal format
2020-08-08 09:45:59 -07:00
Dustin Carlino
8f6a6d40e6
change the few places that copied an OSM ID to the clipboard to instead
...
open the browser. this is more useful, and it also lets us get rid of a
dependency on clipboard stuff, fixing #264
2020-08-05 11:24:51 -07:00
Dustin Carlino
bfc5236152
fix crash with duplicate full route names on one bus stop [rebuild]
2020-08-02 08:36:40 -07:00
Dustin Carlino
1b993544ab
print logs from fast_paths
2020-08-01 08:27:09 -07:00
Dustin Carlino
7a00839553
ditch osm-xml, make a new osm parser from scratch based on roxmltree.
...
skip unreferenced objects, make the output extremely easy to consume.
also fix timers in importer. this helps with #212 , although the actual
problem there is weird.
regen everything. some parking lots change a bit, but not horribly, and
that code needs some attention anyway.
2020-07-25 13:52:41 -07:00
Dustin Carlino
eb4acdc2f6
split parking lot code from building code, for #231
2020-07-25 07:09:43 -07:00
Dustin Carlino
dd3f3d14ab
add a signal policy for half signals, inadvertently brought in by fe94357332
. update a signal in south seattle.
...
will regenerate in the next change
2020-07-23 13:52:49 -07:00
Dustin Carlino
bbe06c6075
randomly distribute residents to buildings in the planning area for #119
2020-07-21 14:00:59 -07:00
Dustin Carlino
1ae29881ba
i forgot that there was an isochrone experiment. plug it up to contours.
2020-07-21 07:23:33 -07:00
Dustin Carlino
a65107145f
turn heatmaps into nice polygon contours
2020-07-20 17:03:32 -07:00
Dustin Carlino
ec9ba28891
stop using simsearch for matching road names. it has odd behavior when the query is just a few charactes, and it often has the wrong results after typing most of a name. just use simple string containment for now.
2020-07-20 08:36:32 -07:00
Dustin Carlino
d9d4e5448e
consolidate some gridlock problems/solutions in markdown, for #114
2020-07-17 13:38:09 -07:00
Dustin Carlino
a86fb5c73d
upgrade to rust 1.45 after fixing an issue in fastpaths [rebuild]
2020-07-17 12:54:14 -07:00
Dustin Carlino
1c39de50f7
use earcutr for polygon triangulation. this finally allows for
...
multipolygons with holes!
2020-07-16 15:33:01 -07:00
Dustin Carlino
eeb70030c2
clean up old experiments from the intersection geometry code.
...
imperceptible changes to some (already broken) intersections.
also grab fresh osm and a new traffic signal
2020-07-14 17:41:56 -07:00
Dustin Carlino
b4b8556f46
just get a few new traffic signals and add parking to south seattle, to
...
try to make progress
2020-07-13 16:07:35 -07:00
Dustin Carlino
0f82c21560
- manually fix a few crazy signals downtown.
...
- interpret tags to make 3rd Ave bus-only. cars technically allowed
sometimes, but bus-only is more accurate for now.
- also remove austin from bundled maps. maintaining it has a cost, and
the point was just to have at least one non-seattle city kept up to
date. krakow now satisfies that.
2020-07-13 13:40:46 -07:00
Mateusz Konieczny
885fdefb5d
playing with processing modifications ( #183 )
...
* WIP set up plumbing for calculating building info in the Raw layer and using it later for #154
* WIP playing with processing modifications
* experiment with some possibilities for tag processing
* fix an embarassing typo
* enable busses in work-home traffic
* refactor, add multiuse
* seed more parking in Kraków
* parse integers properly - thanks for a help!
* rebalance generated trips
* add hack providing some background traffic
more realistic traffic
even mess realistic people
* attempt to further reduce parking deficit
* add TODO
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
2020-07-13 09:56:05 -07:00
Dustin Carlino
6919c24bf8
detect the data/ dir more intelligently. fixes #73 . still need to
...
- consider collapsing the directory structure in the releases
- fix wasm
[rebuild]
2020-07-07 11:09:35 -07:00
Dustin Carlino
82345767c9
store a bitset of access restrictions per road. derive zones from this only for editing and pathfinding. this unblocks editing zones
2020-07-06 13:09:49 -07:00
Dustin Carlino
f02fa8bddd
add a tool to export roads to https://github.com/d-wasserman/shared-row
2020-07-04 11:29:45 -07:00
Dustin Carlino
224701db06
upgrade resvg, which now statically links harfbuzz, for #76 [rebuild]
2020-07-04 07:37:19 -07:00
Dustin Carlino
56cb59c3ac
rip out gtfs code, cutover to osm. will revisit this later; gtfs and osm probably disagree on routes and stops, and gtfs has schedule. but for now, just osm.
2020-07-03 17:33:32 -07:00
Dustin Carlino
ec2411fb8b
experiment with isochrones. nothing yet.
2020-07-02 13:41:24 -07:00
Dustin Carlino
72d0171300
fix #111 by delaying constructing ControlTrafficSignal from edits. also
...
fix time warp screen issue after the UpdateType changes [rebuild]
2020-07-01 19:34:15 -07:00
Dustin Carlino
f90e506fbf
the important stuff: adding a face browser to the ezgui demo
2020-07-01 09:04:55 -07:00
Dustin Carlino
1617a3d3c1
skip missing maps in the city picker
2020-06-29 09:36:37 -07:00
Dustin Carlino
6e6c27fcc4
another attempt to fix mac [rebuild]
2020-06-28 19:30:03 -07:00
Dustin Carlino
ac993115f5
workaround usvg mac build break [rebuild]
2020-06-28 19:05:44 -07:00
Dustin Carlino
bb3da1f8eb
Make a very primitive form of adaptive traffic signal phases. It should
...
be easier to write better policies now; this mostly does the work of
changing the map model and UI to handle variable timing. A small step
towards #91
2020-06-28 10:20:47 -07:00
Dustin Carlino
2733d3e791
pull down fresh OSM data, with some fixes along mlk. handle west seattle
...
bridge being tagged differently. also note some streets in CHAZ/CHOP
disappeared, because they're tagged as pedestrian ways currently. also
forced to pull down fresh traffic signal data to keep lakeslice running
2020-06-27 22:27:03 -07:00
Dustin Carlino
77fa6eb43d
switch to upstream usvg, now with support for a loaded-once fontdb that
...
only uses bundled fonts, not system fonts. side effect is that
apparently the overpass font doesn't have ▼, so switch to a silly down
arrow for now
2020-06-26 11:22:22 -07:00
Dustin Carlino
0358abe62b
also use rust TLS for updater, so we dont need a dependency on libssl-dev
2020-06-23 15:41:09 -07:00
Dustin Carlino
05cf8c113f
depend on rust-native TLS to fix #77 and adjust some wording to fix #80
2020-06-23 09:00:41 -07:00
Dustin Carlino
288e90e530
use lyon for stroking line plots
2020-06-18 17:44:12 -07:00
Dustin Carlino
bfaefe1df3
implement new, better word wrap. remove the old way. applied everywhere
...
except tutorial instructions, since those need rewriting soon anyway
2020-06-15 11:42:09 -07:00
Brian Lewis
1f0da47fff
Remove curl, md5, and unzip shell dependencies ( #60 )
...
* remove unzip, md5, and curl shell dependencies
* update comment
* simplify reqwest call
* remove unecessary result return
* address PR comments
* fix md5 chunk reading
* remove unnecessary indexing
2020-06-10 13:58:16 -07:00
Dustin Carlino
a96b77ba3f
more granular profiling
2020-06-09 18:56:33 -07:00
Dustin Carlino
287d56efd9
generalizing the old gridlock checker. removing unused savestate_every
...
support. reimpl it later using the callbacks if needed.
2020-06-09 14:29:35 -07:00
Dustin Carlino
863593708a
tool to copy OriginalLane to clipboard. also fix wasm build breakage [rebuild]
2020-06-07 16:25:42 -07:00
Dustin Carlino
49dee41b3c
bin Counter values based on value, handling dupes. particularly
...
noticeable for bike lane layer
2020-06-01 09:35:29 -07:00
Dustin Carlino
855d8f4d22
update glutin, winit, glium now that a fix for linux startup time is upstreamed in glutin. and a few other packages too. ditch geo-offset dependency, since it uses old versions and isn't being used yet
2020-06-01 09:18:17 -07:00
Dustin Carlino
27179ee87d
better faces. go back to hiding a few things in debug mode [rebuild]
2020-05-29 13:09:46 -07:00
Dustin Carlino
2bb36124bd
add random nicknames to people
2020-05-29 11:37:21 -07:00
Dustin Carlino
222695423e
start organizing all the use cases / ideas
2020-05-27 16:21:15 -07:00
Dustin Carlino
ff40eb2d4c
use lttb to downsample points for jump-to-time. looks better and is
...
simpler to reason about!
2020-05-27 12:17:45 -07:00
Dustin Carlino
608d8cad4f
breathe life into the little buggers
2020-05-25 17:10:15 -07:00
Dustin Carlino
ce7d28b188
add a button to give feedback [rebuild]
2020-05-22 14:48:26 -07:00
Dustin Carlino
ddf6de5f59
stop dependending directly on serde_derive
2020-05-19 15:06:32 -07:00
Dustin Carlino
c04ce5a5c0
another update after lots of parking mapping
2020-05-16 19:26:42 -07:00
Dustin Carlino
d257535a7c
grab new OSM, try to get mt baker running. rainier is just a mess.
2020-05-16 17:32:01 -07:00
Dustin Carlino
e679eed6e6
some buildings come from relations
2020-05-16 16:05:34 -07:00
Dustin Carlino
0fa4b30521
turn soundcast parcels into extrashapes / kml to understand skipped
...
parcels
2020-05-16 10:26:59 -07:00
Dustin Carlino
1c3073d0e2
work on getting the udistrict to run better. add options to handle
...
outliers in the heatmap
2020-05-15 16:46:12 -07:00
Dustin Carlino
95a0f2f620
working on west seattle
2020-05-14 12:03:19 -07:00
Dustin Carlino
4816e5fe8f
filling out the parking mapper
2020-05-11 12:18:19 -07:00
Dustin Carlino
b756edb36f
grab fresh OSM and enable smarter border matching. few fixes to keep
...
lakeslice working
2020-05-09 19:51:48 -07:00
Dustin Carlino
db7c276e91
select a path of roads
2020-05-09 10:34:52 -07:00
Dustin Carlino
f3b396a7e9
set a window icon
2020-05-09 09:48:24 -07:00
Dustin Carlino
e1c827ed24
adjust signal timing and workaround an intersection with unrealistically
...
large geometry, and... lakeslice runs!
2020-05-05 20:29:50 -07:00
Dustin Carlino
4be2d66750
grab some upstreamed fixes from OSM
2020-05-05 18:59:53 -07:00
Dustin Carlino
43fe432e07
starting a tool to more granularly manage data files. my half, uploading
2020-05-01 19:22:03 -07:00
Dustin Carlino
02c5b6617b
dismantle importing for neighborhoods. long unused. just retain a simple
...
osmosis polygon editor.
2020-05-01 14:11:41 -07:00
Dustin Carlino
270c7d0712
just small cleanups. taking a break from gridlock / map quality for a while.
2020-05-01 11:50:35 -07:00
Dustin Carlino
dbc47aee7d
fresh osm, finally. accept some regression, charge forward
...
montlake: FINE!
23rd: naw
lakeslice: regression
2020-04-30 22:37:43 -07:00
Dustin Carlino
543d95a41c
new lights, get lakeslice working again. and add absolute counts to
...
intersection demand viz
2020-04-30 18:00:51 -07:00
Dustin Carlino
50a5f59239
good enough. cut-off point. removing map fixes!
...
(leaving the code around for now)
2020-04-30 14:27:54 -07:00
Dustin Carlino
5d8d8805a8
unstick my favorite intersection (and a few roundabouts)
2020-04-30 13:49:14 -07:00
Dustin Carlino
cea84757e1
making a little progress with ballard
2020-04-29 18:49:14 -07:00
Dustin Carlino
956b1ec4ea
banning an extremely questionable left turn... AND LAKESLICE WORKS
2020-04-29 18:11:03 -07:00
Dustin Carlino
2570db2501
update some lights and allow a little more box-blocking. making it to
...
5pm on lakeslice, no regressions elsewhere. officially cutover to
nofixes version of 23rd
2020-04-29 17:20:33 -07:00
Dustin Carlino
0bc965f0b9
updated a few traffic signals along 23rd. have to filter out signal data
...
from fixed intersections, urgh
2020-04-29 12:15:22 -07:00
Dustin Carlino
55c8a9d875
use colorous for heatmaps
2020-04-27 18:48:19 -07:00
Dustin Carlino
8be319300b
fold the popdat crate into importer; nothing else should have any dependencies on it
2020-04-25 13:14:48 -07:00
Dustin Carlino
65ef5d4149
make LonLat implement Eq
2020-04-24 21:36:52 -07:00
Dustin Carlino
2b861ff667
handle tiny geometry in traffic signal editor, and bring in new traffic
...
signals
2020-04-21 18:18:43 -07:00
Dustin Carlino
d586a9054b
rewrite the headless tool for pandemic stuff
2020-04-15 12:48:45 -07:00
Dustin Carlino
aa765f70ed
cargo +nightly fmt
2020-04-11 19:07:48 -07:00
Dustin Carlino
6580360f99
fix map editor. also, apparently Cargo.lock should be under version control for binary crates
2020-04-10 20:00:13 -07:00