Commit Graph

1099 Commits

Author SHA1 Message Date
Dustin Carlino
3fa06fd032 dont repeat keypress manually in OSD message 2018-07-26 14:28:01 -07:00
Dustin Carlino
ab986a3a8a debugging turn-making funkiness 2018-07-26 13:18:37 -07:00
Dustin Carlino
d22d955dbb deleting and adding turns when edited 2018-07-26 13:06:37 -07:00
Dustin Carlino
7b4df16c8e printing reasons why edits are invalid 2018-07-26 12:14:37 -07:00
Dustin Carlino
904aa4449e editing lane types, vastly simplified, no turns yet 2018-07-26 12:04:02 -07:00
Dustin Carlino
de54b917bc changing turns to have IDs thatll be stable across edits 2018-07-25 19:01:47 -07:00
Dustin Carlino
3e72f39121 planning how to do live road edits 2018-07-25 18:19:39 -07:00
Dustin Carlino
9200a5ef3d use pretty assertions 2018-07-24 16:23:25 -07:00
Dustin Carlino
c321c07bd7 make map use road edits when loading from scratch 2018-07-24 16:06:25 -07:00
Dustin Carlino
120e7c5db1 plumb through UI controls for road edits 2018-07-24 15:43:01 -07:00
Dustin Carlino
2ba0647b7c saving and loading road edits in the UI 2018-07-24 15:30:40 -07:00
Dustin Carlino
9fbf48c495 defining the basic data model for some road edits 2018-07-24 12:30:56 -07:00
Dustin Carlino
30b992e7f0 wait, make road remember lane types too 2018-07-24 11:40:58 -07:00
Dustin Carlino
7d187bcceb ripping out other_side too 2018-07-24 10:56:23 -07:00
Dustin Carlino
83d5e75e43 store children in road, and stop storing some state in lane and query it instead 2018-07-24 09:23:23 -07:00
Dustin Carlino
549aa75d9c lifted unshifted pts to road 2018-07-24 08:59:01 -07:00
Dustin Carlino
4bf72b36c8 removing osm metadata from lanes now 2018-07-24 08:18:47 -07:00
Dustin Carlino
cb26955f8e introduce RoadID 2018-07-24 07:28:11 -07:00
Dustin Carlino
4207b2cacf rename existing roads to lanes 2018-07-23 20:24:53 -07:00
Dustin Carlino
3017728515 introducing bike lanes! no turns yet 2018-07-23 10:56:45 -07:00
Dustin Carlino
7ee8ef0d8d cleaning up after polyline trimming 2018-07-23 10:05:20 -07:00
Dustin Carlino
272620119f WIP working on polyline trimming, but nice and slowly this time 2018-07-23 09:41:51 -07:00
Dustin Carlino
36bfa9cfdf be able to relate lanes to orig road idx, for debugging 2018-07-22 17:18:13 -07:00
Dustin Carlino
1c85188a64 WIP removing disconnected chunks of map. leaves orphaned intersections
still, so disabled.
2018-07-22 16:31:31 -07:00
Dustin Carlino
51fa14d934 parsing shapefiles again for traffic signals 2018-07-20 11:27:57 -07:00
Dustin Carlino
f54d581016 fixing pedestrian mouseover 2018-07-14 13:38:15 -05:00
Dustin Carlino
e5de791fa7 starting to model pedestrians. spawn and draw them. 2018-07-11 15:06:31 -07:00
Dustin Carlino
9c21dae3d9 making turns for crosswalks. had to rethink how turns work slightly. 2018-07-11 12:10:56 -07:00
Dustin Carlino
9ca0682108 handle lanes with no turns 2018-07-10 12:10:12 -07:00
Dustin Carlino
5ffa4ba7c7 centering parked cars in their spots 2018-07-09 16:08:23 -07:00
Dustin Carlino
282f20e438 drawing parked cars 2018-07-09 14:17:33 -07:00
Dustin Carlino
8b58665dbd handling new build errors after 1.27... 2018-07-09 13:44:52 -07:00
Dustin Carlino
2ebc13140b round of rustfmt after 1.27 upgrade 2018-07-09 12:30:59 -07:00
Dustin Carlino
d3bcbe1da2 lots of the logic to start a parked car 2018-07-09 11:59:40 -07:00
Dustin Carlino
bf68be8870 moving the sim state that's driving-specific 2018-07-09 11:07:54 -07:00
Dustin Carlino
8b908d2744 calculating the number of parking spots 2018-07-09 09:16:12 -07:00
Dustin Carlino
c033f51da2 make cars pathfind to their destination 2018-07-08 15:40:39 -07:00
Dustin Carlino
c6ebab1e9c move some sim code 2018-07-08 14:00:03 -07:00
Dustin Carlino
0e4ff75286 setting up an intersection test in experimental 2018-07-07 10:48:46 -07:00
Dustin Carlino
d5de9cb8eb use macros, instead -- more readable 2018-07-06 14:51:14 -07:00
Dustin Carlino
6ea73a26e4 WIP experimenting with list of closures 2018-07-06 14:41:58 -07:00
Dustin Carlino
28ea70adea and gui itself 2018-07-06 14:15:19 -07:00
Dustin Carlino
9df7da33b1 and selection 2018-07-06 14:11:33 -07:00
Dustin Carlino
44fc98cb51 and warp 2018-07-06 14:07:22 -07:00
Dustin Carlino
db99e3c9f7 same for search 2018-07-06 14:05:14 -07:00
Dustin Carlino
7bbaa84996 make color picker mutate itself 2018-07-06 14:01:01 -07:00
Dustin Carlino
09e0c43fd5 and geom validator 2018-07-06 13:56:14 -07:00
Dustin Carlino
24ed8d17f8 and stop sign editor 2018-07-06 13:49:08 -07:00
Dustin Carlino
71d466733b same for signal editor 2018-07-06 13:45:11 -07:00
Dustin Carlino
79f58155d9 make floodfiller own its state completely 2018-07-06 13:38:15 -07:00
Dustin Carlino
18132e3c8b consistently having one(ish) plugin do stuff at a time 2018-07-06 12:25:43 -07:00
Dustin Carlino
e2aabeb0e9 refactoring drawing primitives into GfxCtx 2018-07-06 11:04:18 -07:00
Dustin Carlino
8f244438c1 plumbing window_size with canvas 2018-07-06 10:26:35 -07:00
Dustin Carlino
10dfceb4ec make geom validator warp 2018-07-06 09:16:14 -07:00
Dustin Carlino
15786cddf5 warping to anything 2018-07-06 09:05:39 -07:00
Dustin Carlino
445a1925eb making geom validation interactive 2018-07-06 08:47:56 -07:00
Dustin Carlino
dee6c97f4c draw stop sign in intersections too 2018-07-04 14:05:21 -07:00
Dustin Carlino
c58b91ee4d cleaning up intersection colors 2018-07-04 13:29:46 -07:00
Dustin Carlino
92f8aeff1e drawing a traffic signal, no good colors yet 2018-07-04 13:22:15 -07:00
Dustin Carlino
fb24efe1f1 fix bbox for bldgs to include path 2018-07-03 17:57:19 -07:00
Dustin Carlino
73455017c2 depicting stop signs very primitively 2018-07-03 17:15:03 -07:00
Dustin Carlino
2f9ff9d069 refactoring road markings 2018-07-03 17:02:20 -07:00
Dustin Carlino
2f8d1e8150 highlight the road after warping to it 2018-07-03 14:47:42 -07:00
Dustin Carlino
f1024792e4 validate geometry doesn't overlap for a rendered map 2018-07-03 14:43:53 -07:00
Dustin Carlino
d66d070dd6 reset selection state after hiding something 2018-07-03 09:44:39 -07:00
Dustin Carlino
46b159ae8f be able to hide stuff temporarily 2018-06-29 12:23:24 -07:00
Dustin Carlino
f9c1b3b526 WIP representing polyline shifting failure 2018-06-29 11:17:39 -07:00
Dustin Carlino
fe53536024 prototyping crosswalks 2018-06-29 10:30:36 -07:00
Dustin Carlino
a082fbb511 moving stuff to geom crate 2018-06-28 20:35:00 -07:00
Dustin Carlino
34e7f11cda get rid of vecmath 2018-06-28 19:46:21 -07:00
Dustin Carlino
8e1f9b79f0 PolyLine struct 2018-06-28 18:02:14 -07:00
Dustin Carlino
7f09f22bcf making a line struct 2018-06-28 17:14:27 -07:00
Dustin Carlino
4bdf70365e making my own angle class 2018-06-28 15:07:48 -07:00
Dustin Carlino
987f039404 LonLat to Pt2D more explicit 2018-06-28 14:19:59 -07:00
Dustin Carlino
ff526a6854 split out HashablePt2D 2018-06-28 13:55:43 -07:00
Dustin Carlino
849a132a6a dashed white lines on big roads 2018-06-27 12:48:11 -07:00
Dustin Carlino
02d7053239 trying to fix the general case... maybe detecting the problem. giving up
for now.
2018-06-26 14:09:53 -07:00
Dustin Carlino
f5fc04a14e WIP debugging bad polygons. seemingly fixed one pt inversion case that
happens only on the first pt.
2018-06-26 13:23:56 -07:00
Dustin Carlino
ed799097dc render parcel interior with nice colors, but draw it lowest 2018-06-26 11:22:18 -07:00
Dustin Carlino
50aa53e9a9 drawing parking markings too 2018-06-26 11:11:34 -07:00
Dustin Carlino
736d143b30 draw sidewalk marks 2018-06-26 10:36:24 -07:00
Dustin Carlino
43536743a8 warp plugin, and making text entry handle numbers 2018-06-26 09:05:14 -07:00
Dustin Carlino
8de92c095a OSM tags as a hash, now that serialization is easy 2018-06-26 07:35:34 -07:00
Dustin Carlino
bc92c3ca8d replacing the pb with serde stuff 2018-06-25 18:56:57 -07:00
Dustin Carlino
fcec05cdfa rm old thick line stuff at last 2018-06-25 16:16:40 -07:00
Dustin Carlino
e1e3abbb28 fixed turns that vanished 2018-06-25 15:42:04 -07:00
Dustin Carlino
5a9bc56c32 center lines are finally gone 2018-06-25 15:34:21 -07:00
Dustin Carlino
0fa7fc25d4 use center pts in more places... 2018-06-25 15:23:15 -07:00
Dustin Carlino
729ad9df24 plumb in new lane center pts, and use them for rendering always. looks OK... 2018-06-25 14:50:18 -07:00
Dustin Carlino
571673b02f figuring out where polygons go wrong... 2018-06-25 14:41:00 -07:00
Dustin Carlino
7c747ea9ee working on calculating start/end crossings explicitly 2018-06-25 13:48:30 -07:00
Dustin Carlino
fef18fbf2f use new polygons for parcels... 2018-06-25 13:29:31 -07:00
Dustin Carlino
1f34f588a3 undo the debug 2018-06-25 13:21:51 -07:00
Dustin Carlino
dfdd717c29 use shifted points for polygon, all using the old polyline stuff... 2018-06-25 13:17:28 -07:00
Dustin Carlino
6cad6c7394 working on the line trimming logic. seems to do something? 2018-06-25 13:11:55 -07:00
Dustin Carlino
6afb71ea5f preps for line trimming 2018-06-25 11:54:15 -07:00
Dustin Carlino
427bdf3f34 compute front path upfront 2018-06-25 11:16:33 -07:00
Dustin Carlino
2eb0193fb3 slight fixup to drawmap ctor 2018-06-25 10:32:17 -07:00
Dustin Carlino
8e1af1f4ea store graph connections more sanely 2018-06-25 10:28:33 -07:00
Dustin Carlino
06b28f2d2d finishing screenspace translation of roads and intersections 2018-06-25 10:13:02 -07:00
Dustin Carlino
1242ec5297 WIP transforming gps to screen space earlier 2018-06-25 09:40:37 -07:00
Dustin Carlino
ee90ce1ed8 cleaning up redundant extern crates 2018-06-25 09:14:44 -07:00
Dustin Carlino
ba310cbd45 removing geom crate, using just map model 2018-06-25 09:00:43 -07:00
Dustin Carlino
2b9eb66ba1 moving polyline to map_model, using pt2d 2018-06-24 17:01:40 -07:00
Dustin Carlino
3e33162779 polygons for a polyline. the simple method somehow didn't work, not sure
why!
2018-06-24 16:49:00 -07:00
Dustin Carlino
2314907f4e unit test for polyline shifting 2018-06-23 21:19:58 -07:00
Dustin Carlino
2334c46cd3 now with 4 points, and shifting an entire polyline intelligently 2018-06-23 16:23:56 -07:00
Dustin Carlino
8530622beb label all points by the magic of macros 2018-06-23 15:37:18 -07:00
Dustin Carlino
3f1b867809 multiple lanes on each side of the road 2018-06-23 15:15:08 -07:00
Dustin Carlino
3270d9f1ba messing around with the multiline drawing. moving point, labeling
points, using line intersection to find a decent join point.
2018-06-23 14:52:18 -07:00
Dustin Carlino
0327432f2f adding a second UI for experimenting 2018-06-23 10:27:30 -07:00
Dustin Carlino
0d46b413bb move gfxctx 2018-06-22 14:42:13 -07:00
Dustin Carlino
b3267bb2e7 make background color configurable 2018-06-22 14:08:52 -07:00
Dustin Carlino
5ce158cb90 refactoring json saving/loading 2018-06-22 13:36:12 -07:00
Dustin Carlino
915ad9f7fe slightly refactor some zoom stuff 2018-06-22 10:56:18 -07:00
Dustin Carlino
d54bce01ac make plugins track their own active state 2018-06-22 10:35:35 -07:00
Dustin Carlino
2770b59f85 make the color tuner actually change things live 2018-06-21 21:33:08 -07:00
Dustin Carlino
348f9a0a0f very hacky menu to pick what color to change 2018-06-21 13:45:09 -07:00
Dustin Carlino
6b8a5a0103 moving more colors to scheme 2018-06-21 11:18:17 -07:00
Dustin Carlino
dde825fa56 dont clobber colors when introducing a new one 2018-06-21 10:42:30 -07:00
Dustin Carlino
e7e334a460 using color scheme in most places 2018-06-21 10:32:07 -07:00
Dustin Carlino
623f0528cd saving and loading a color scheme, but not using it yet 2018-06-21 09:40:53 -07:00
Dustin Carlino
e0a613fb21 basic color picker plugin 2018-06-20 21:13:41 -07:00
Dustin Carlino
480bf5ffbe always display the front path for buildings 2018-06-20 18:13:18 -07:00
Dustin Carlino
c2473828a6 finding paths between buildings and nearest sidewalk 2018-06-20 17:29:04 -07:00
Dustin Carlino
03df50c96e fill in parcel interior with color 2018-06-19 14:24:30 -07:00
Dustin Carlino
3838a1c4ac extra lanes on one-ways 2018-06-19 13:39:10 -07:00
Dustin Carlino
0d43b8da88 dont put cars on wrong lane types 2018-06-19 12:24:29 -07:00
Dustin Carlino
5411310b20 rm snake game plugin and poorly written animation stuff 2018-06-19 12:19:05 -07:00
Dustin Carlino
592f284be3 fix center lines for two-ways 2018-06-19 10:28:08 -07:00
Dustin Carlino
52b8570e6c sidewalks for two-ways 2018-06-19 10:10:30 -07:00
Dustin Carlino
854eee4fd0 rendering parking lanes for two-ways... 2018-06-19 09:54:21 -07:00
Dustin Carlino
55fea2d5a7 moving to new way of generating lanes from osm ways 2018-06-19 09:29:58 -07:00
Dustin Carlino
ef78902f9a slowly moving away from depending on other_side in Road, and declaring LaneType stuff 2018-06-19 09:03:26 -07:00
Dustin Carlino
91920c3e1d dont reach into DrawRoad's polygon directly from DrawIntersection 2018-06-18 14:46:11 -07:00
Dustin Carlino
40ec99592d making DrawRoad use pts from GeomRoad 2018-06-18 12:46:25 -07:00
Dustin Carlino
923883883b updating README and trimming license declarations 2018-06-03 17:56:53 -07:00
Dustin Carlino
37b3909596 dont print a newline in the OSD unless necessary 2018-05-16 19:31:57 -07:00
Dustin Carlino
0e672f9e09 remove svg rendering. output is too large, never used. 2018-05-16 18:58:30 -07:00
Dustin Carlino
d8aa559e0e draw OSD from one place, accumulating lines 2018-05-16 17:09:44 -07:00
Dustin Carlino
b8842d5852 detect and fix when two parts of the UI try to read the same key 2018-05-14 19:00:26 -07:00
Dustin Carlino
f2b7344940 using new rust 1.26 match stuff, and fmt 2018-05-10 16:19:26 -07:00
Dustin Carlino
677f74770a dont crash in traffic signal editor when reading keyboard 2018-04-22 16:47:14 -07:00
Dustin Carlino
9f3fd72417 changing f64 time to u32 ticks. this gets rid of the custom serde stuff
and lets us compare full sim states
2018-04-14 15:29:18 -07:00
Dustin Carlino
401123d11a make rng part of sim 2018-04-13 22:44:24 -07:00
Dustin Carlino
f8436f9017 add UI hooks to save/load sim state 2018-04-13 21:52:30 -07:00
Dustin Carlino
ff2f284d1f serializing (most of) the sim state 2018-04-13 19:08:18 -07:00
Dustin Carlino
065c2ce9ba Importing everything since the initial import 2018-04-10 17:51:37 -07:00
Dustin Carlino
1863289f6d Initial import of A/B Street prototype. 2018-03-13 08:06:03 -07:00