Dustin Carlino
11cefb118a
And the same thing for OriginalIntersection
...
Actually, don't need to regenerate map data. Thanks to the magic of
zero-cost wrapper types, the binary format is the same.
2020-08-13 11:48:13 -07:00
Dustin Carlino
843d24b6ed
Refactor: OriginalBuilding should just be OsmID. The purpose of
...
OriginalBuilding was to refer to buildings in a stable way across
different maps and across OSM updates. Recently, OsmID and friends
appeared. The double layer of wrapping is an annoying API.
Not regenerating map data yet; about to do the same thing for
OriginalIntersection
2020-08-13 11:37:06 -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
f70d01626f
Fix bug introduced in 9ce7ab1c88
. Don't
...
cache intersection_type in DrawIntersection; it changes when converting
stop signs<->traffic signals<->closed for construction.
2020-08-13 08:21:27 -07:00
Dustin Carlino
d9da24b3d1
Work around the initial window size being wrong by reseting the minimap
...
when the window is resized. This is a bit unexpected if done
interactively in-game, but not unreasonable.
This mostly fixes the issue that sometimes happens starting with --dev.
When the resize happens late on X11, the minimap looks initially better,
but still cut off horizontally. Zooming in and out fixes it. (Before,
even zooming in/out would keep it tiny, because base_zoom was never
reset.)
2020-08-13 08:15:21 -07:00
Dustin Carlino
58849d3d15
Small refactor: in most places, we can actually use String as the error type; Box<dyn Error> is only useful when errors of different types are propagated.
...
Nowhere in abst do we care about handling different errors differently
2020-08-13 07:12:06 -07:00
Dustin Carlino
eca71d27c9
tiny cleanup: use ScreenPt for canvas cursor
2020-08-12 17:53:17 -07:00
Dustin Carlino
ae18b09b3b
refactor separators
2020-08-12 16:46:11 -07:00
Dustin Carlino
9af8aafb44
now that we're drawing lots in the multi-sig editor, cache it
2020-08-12 15:50:23 -07:00
Dustin Carlino
e4a2f35bb0
glue more basic functionality to the multi-sig ed
2020-08-12 15:50:23 -07:00
Dustin Carlino
490471848a
copy over lots of the misc functionality to the new multi-signal editor
2020-08-12 15:50:23 -07:00
Dustin Carlino
ca501b7b80
initially synchronize all signals in a group
2020-08-12 15:50:23 -07:00
Dustin Carlino
5803e5721e
add turn icons to the new multi-signal editor
2020-08-12 15:50:23 -07:00
Dustin Carlino
c08e244d23
tiny start to a new multi-intersection traffic signal editor. just get
...
the left panel to display some kind of merged view
2020-08-12 15:50:23 -07:00
Michael Kirk
62828e1ffa
revert wasm shader changes. unfixes DPI2 devices, but fixes DPI1 devices
2020-08-12 15:44:48 -07:00
Michael Kirk
abe1f051eb
code review: make more things private, remove unused method
2020-08-12 15:44:48 -07:00
Michael Kirk
4d3194c362
Revert "DO NOT MERGE: web logging"
...
This reverts commit fecfad72806b095e8477d983dc69f1275422a90f.
2020-08-12 15:44:48 -07:00
Michael Kirk
5c8ccef970
DO NOT MERGE: web logging
2020-08-12 15:44:48 -07:00
Michael Kirk
05f1a0332b
glow backend compiles, but untested
...
These are my best guess at the changes to get glow working with the DPI changes.
Currently on master, on macos at least, building the glow backend
launches a blank screen. That's not resolved by this PR, so all these
changes are untested.
2020-08-12 15:44:48 -07:00
Michael Kirk
58d360668e
add glow feature
2020-08-12 15:44:48 -07:00
Michael Kirk
32a92c0d76
wasm backend
2020-08-12 15:44:48 -07:00
Michael Kirk
f7f4fd889e
consolidate screenspace and mapspace methods since they now behave the
...
same.
rg -l screenspace_svg | xargs sed -i .bak 's/screenspace_svg/load_svg/'
rg -l mapspace_svg | xargs sed -i .bak 's/mapspace_svg/load_svg/'
2020-08-12 15:44:48 -07:00
Michael Kirk
f42b7c003c
layout uses logical pixels, not physical
...
Previously it was not clear (to me at least) when a value used
in layout was in units of logical pixels vs physical pixels.
This lead to some ambiguity about where to scale values, and lead to
some values being scaled more than once or sometimes not at all, leading
to inconsistent layouts across DPI's.
The intent of this change is to solve this ambiguity by having the ui
clients work *exlusively* with logical pixels.
To achieve this, we consolidate all scaling to the graphics backend.
We translate all PhysicalPositions from the windowing libraries to
LogicalPixles.
Our own types: ScreenPt, ScreenDim, etc. are all in logical units.
In some places, I replaced passing raw floats with a corresponding
Screen* type to clarify that the units are in logical pixels.
2020-08-12 15:44:48 -07:00
Dustin Carlino
9ce7ab1c88
defer drawing intersections, same as lanes. faster startup time and melts my GPU less trying to load london and tokyo
2020-08-12 11:17:06 -07:00
Dustin Carlino
3b49353df2
gracefully degrade if we cant make TurnGroups for a traffic signal. this
...
gets SF, Tokyo, and London to import!!!
2020-08-12 11:05:19 -07:00
Dustin Carlino
7a0dbb28b1
handle some rendering failures, getting new orleans to load
2020-08-12 09:47:35 -07:00
Dustin Carlino
62bb82886d
blaze through all the crazy errors in intersection_polygon, just
...
recording errors and falling back to circular geometry and not trimming
roads
also filter out highway areas like
https://www.openstreetmap.org/way/132705692 , woops!
Manchester and NOLA now import...
2020-08-12 09:36:46 -07:00
Dustin Carlino
eb74e05407
missed a few right_shift calls in importer. and speed up traffic signal
...
matching while I'm there
2020-08-12 08:34:35 -07:00
Dustin Carlino
a27b029ff6
plumb errors for shifting polylines through more APIs. mostly no-op for
...
now, just switched everything to must_* variants, but this paves the way
for handling failures.
... except for rendering pedestrian crowds -- I _think_ I saw a crash
from that, and it's easy to have a fallback there
2020-08-12 08:18:10 -07:00
Dustin Carlino
8568690a7a
stop the dropdown from jumping around when opening it while sim is running
...
(the bug: open population layer while sim is running, click the color
scheme dropdown)
2020-08-12 07:19:00 -07:00
Dustin Carlino
df3cd30081
click to cancel out of dropdowns
2020-08-12 07:08:09 -07:00
Dustin Carlino
bc4c1eaea6
make Filler responsive to window resizing
2020-08-11 17:28:27 -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
a370b6aac6
move the traffic signal details into a tab. specialize make_signal_diagram for editing.
...
this is a step towards editing multiple traffic signals at once, and a design that yuwen has suggested many times before
2020-08-11 12:00:49 -07:00
Dustin Carlino
e38814563a
cleanup storymap code after menu refactor
2020-08-11 11:26:06 -07:00
Dustin Carlino
7443f4ba98
detangle the way Menus communicate results, removing the Clone
...
requirement and finishing off InputResult
2020-08-11 09:10:16 -07:00
Dustin Carlino
c0d335b074
fix readme videos
2020-08-10 17:39:25 -07:00
Dustin Carlino
0749a2ac7b
start keeping goldenfiles for bus routes, similar to the screenshot diff test. this will make it much easier to finish up bus matching without accidentally regressing somewhere
2020-08-10 16:03:04 -07:00
Dustin Carlino
312775b491
refactor TurnGroup creators, but keep it stored on traffic signal, so
...
it's regenerated for edits
2020-08-10 15:39:28 -07:00
Dustin Carlino
c101666c7c
finishing the consolidation of docs
2020-08-10 14:56:39 -07:00
Dustin Carlino
0ac22208c7
moving a few more docs into the mdbook
2020-08-10 14:12:53 -07:00
Dustin Carlino
d44245211e
mdbook cant have blank section
2020-08-10 13:52:16 -07:00
Dustin Carlino
f9b41dda30
finally get github pages + mdbook to work, thanks to
...
https://github.com/rust-lang/mdBook/pull/1248#issuecomment-671528271 and
removing jekyll
2020-08-10 13:49:30 -07:00
Dustin Carlino
31e8c654d2
prototype directional traffic signal demand viz over time
2020-08-10 13:19:47 -07:00
Dustin Carlino
f02fdec8e3
new release
2020-08-09 15:16:18 -07:00
Dustin Carlino
43a6edbc28
regenerate everything, prep for release. [rebuild]
...
lakeslice still gridlocks and lots of bus routes cut out. not the
happiest release.
2020-08-08 21:33:11 -07:00
Dustin Carlino
ad3a0398bb
stop missing panics even after long Timer notes
2020-08-08 19:38:32 -07:00
Dustin Carlino
ecd5d86009
handle bus stops right at intersections
2020-08-08 19:32:18 -07:00
Dustin Carlino
52e89315d7
in lieu of understanding bus platforms, add a shoulder to some roads with bus stops, now that we know what side of the road with some confidence. fixes 45th and I5.
2020-08-08 18:39:40 -07:00
Dustin Carlino
8764226765
cutover to using the new stuff for snapping bus stop positions...
...
seems pretty good for a few examples. not regenerating yet. still lots
of routes skipped because of edge cases, but now it's way more clear
how to work on those smaller problems.
2020-08-08 18:14:08 -07:00