Dustin Carlino
ab6796d56c
make intersection actually be a polygon now
2019-01-26 13:31:29 -08:00
Dustin Carlino
8afe83162b
collapsing all lane markings into a single Drawable
2019-01-25 11:21:46 -08:00
Dustin Carlino
b21852875e
batch lots more easy things... down from 760 calls for a scene to 158
2019-01-25 08:39:45 -08:00
Dustin Carlino
a065c63ad7
batching sidewalk lines. fix the very silly batching bug
2019-01-25 08:10:09 -08:00
Dustin Carlino
49f0c64ef4
use the pts/indices for rendering
2019-01-24 15:32:46 -08:00
Dustin Carlino
559d568acd
make Polygon store points and indices. don't use this fact for rendering
...
just yet.
2019-01-24 15:13:27 -08:00
Dustin Carlino
fad89ddffa
include more pts in the intersection polygon to only cover area from the original road bands. also fix a bug deduping points in the polygon.
2019-01-19 20:56:03 -08:00
Dustin Carlino
dfe50dcee4
reasonable support for roundabouts... collapse it to a single
...
intersection, which usually gets treated like a stop sign, and has
reasonable geometry
2019-01-16 15:05:44 -08:00
Dustin Carlino
e8e119dbbf
remove all the polyline shifting/polygon variants that might fail
2019-01-15 15:25:00 -08:00
Dustin Carlino
57665c9325
enable the polyline angle-fixing... it improves lots of problems and only makes one intersection look worse. still needs more work later.
2019-01-15 14:14:48 -08:00
Dustin Carlino
aae021f478
oops, gigantic change trying to handle bad lane geometry
...
- debug points and triangles of lanes
- disabled fixes for polylines with points that change angles by 180 and can be fixed by swapping them
- organize intersection polygon code in different methods for the degenerate cases
- try something new for degenerate-two's... fix road centers, then calculate intersection corners. it fixed a few spots!
2019-01-15 13:48:15 -08:00
Dustin Carlino
930107793b
dedupe pts from intersection polygons without making all Pt2Ds have careful resolution yet. sidewalk corners now need work...
2019-01-12 23:17:05 -08:00
Dustin Carlino
9590ee7e78
preps for Pt2D with 1cm resolution... immutable PolyLine, helper for
...
pt-pt distance
2019-01-12 19:13:16 -08:00
Dustin Carlino
daa55026ae
making shift left/right for polyline too
2019-01-12 14:13:15 -08:00
Dustin Carlino
caf4006837
explicitly making shift right/left for Line
2019-01-12 13:48:14 -08:00
Dustin Carlino
bc6a61fc74
WIP: better sidewalk corner geometry. it's a start.
2019-01-12 13:40:06 -08:00
Dustin Carlino
47b5d2e4aa
upgrade all other deps, except for piston/winit stuff
2019-01-11 12:36:20 -08:00
Dustin Carlino
c09fa98f57
upgrade a few dependencies
2019-01-11 10:55:58 -08:00
Dustin Carlino
60aebe6d74
woops, without_last_line was wrong
2019-01-10 15:04:10 -08:00
Dustin Carlino
c70057d46e
finding an intersection pt, then going back to find the angle, sometimes
...
fails due to floating point nonsense, so combo the query to fix a few
more cases
2019-01-10 12:03:14 -08:00
Dustin Carlino
7960601ff9
WIP trying to get perpendiculars on the road center...
2019-01-10 09:48:47 -08:00
Dustin Carlino
0522829d9a
draw my own arrows, which don't exceed distance too much... except they
...
dont work in all cases, so disable
2019-01-09 14:59:46 -08:00
Dustin Carlino
b7dfa3effc
make neighborhood editor work with synthetic maps, so i stop thinking the plugin is broken
2018-12-22 16:53:50 -08:00
Dustin Carlino
0aece4944d
prep for disabling mouseover by changing canvas API. fix neighborhood
...
plugin to handle out-of-bounds points while we're there.
2018-12-22 16:49:47 -08:00
Dustin Carlino
1d9f3320fa
implementing draw_line and draw_rounded_line directly
2018-12-22 13:58:45 -08:00
Dustin Carlino
0c2a389f96
dont draw complicated stop sign depiction when hovering. simplify lots of the rendering hints, also fixing up traffic signal crosswalk depiction.
2018-12-20 11:28:42 -08:00
Dustin Carlino
4805892acd
caching polyline length, even though it doesn't seem to affect total
...
performance
2018-12-10 14:59:52 -08:00
Dustin Carlino
f48757c5e7
clippy pt2
2018-12-08 19:56:54 -08:00
Dustin Carlino
ab86835611
initially playing with clippy... pt1
2018-12-08 18:21:56 -08:00
Dustin Carlino
b7edc07580
moving a few inlined unit tests to my test framework. didnt spot these before.
2018-12-06 12:59:08 -08:00
Dustin Carlino
91b2b07fbd
remove more extern crate's; import macros directly
2018-12-06 11:22:12 -08:00
Dustin Carlino
375a923a9d
try removing most extern crate's
2018-12-06 11:00:13 -08:00
Dustin Carlino
f64f411093
upgrade all crates to 2018 in Cargo.toml. this requires switching to
...
crate:: paths everywhere. not yet fiddling with 'extern crate's
2018-12-06 10:57:31 -08:00
Dustin Carlino
6a0cd7f71e
rust 2018: run the new fmt, delete the unneeded script
2018-12-06 10:05:50 -08:00
Dustin Carlino
7c53e9bb4a
dashed polylines for yielding turns
2018-12-03 13:45:06 -08:00
Dustin Carlino
5bc9992fc0
using blockface kml in convert_osm to prescribe parking lanes
2018-11-21 22:43:14 -08:00
Dustin Carlino
bd67d88bab
adjust the blockface<->road matching
2018-11-21 15:39:49 -08:00
Dustin Carlino
044a25fce2
give up on Sim being Eq; settle for PartialEq, get rid of all of the annoying 'ignore this field' hacks. also getting rid of unnecessary PartialEq impls in map_model
2018-11-18 16:28:43 -08:00
Dustin Carlino
7b6f1c4624
refactoring a proper way to draw/use rectangles
2018-11-14 09:57:58 -08:00
Dustin Carlino
7ddbd753f4
storing neighborhoods as GPS
2018-11-09 14:12:20 -08:00
Dustin Carlino
cda4a9ad81
improve lane trimming by picking the closest collision of a polyline to a polygon
2018-11-07 14:01:58 -08:00
Dustin Carlino
4bede29429
make trim_to_pt panic
2018-11-07 13:54:39 -08:00
Dustin Carlino
0008712c9a
revamping driving turns to handle multi-lane cases better. seems to work
...
well!
2018-11-07 10:53:48 -08:00
Dustin Carlino
db34ddb2b7
changing the activity plugin to show a heatmap of what's currently in view
2018-11-01 16:07:48 -07:00
Dustin Carlino
ab1254870a
fixing some of the 3-way cases... others arent even detected, seemingly
2018-10-31 12:02:18 -07:00
Dustin Carlino
c22ec98259
get_bounds for PolyLine
2018-10-31 08:31:16 -07:00
Dustin Carlino
27406a5a5c
rotating stop signs (really an excuse to start using the geo crate in geom...)
2018-10-30 16:04:46 -07:00
Dustin Carlino
f8f2ea3f95
switching to a simpler GPS<->Pt2D scheme that's bijective
2018-10-29 15:01:15 -07:00
Dustin Carlino
bb9c98b54e
splitting into two Bounds types
2018-10-29 14:16:30 -07:00
Dustin Carlino
cc9f0289ab
exporting polygons in the osmosis format... wait, may need to change the
...
coordinate system first. let's first refactor bounds to be more careful
about existing code.
2018-10-29 12:29:11 -07:00
Dustin Carlino
ab38836c70
debug offsets in weird polylines, remove unused polyline methods
2018-10-29 10:38:48 -07:00
Dustin Carlino
3a62ed8695
refactor get_bbox
2018-10-28 18:43:36 -07:00
Dustin Carlino
9c1ae28bf8
ped trace_routes were wrong for contraflow steps
2018-10-22 13:16:30 -07:00
Dustin Carlino
ec49d2dd20
fix problem with trace_route requesting invalid start dist
2018-10-17 15:27:38 -07:00
Dustin Carlino
d02c5004f9
clean up Pt2D::from_gps API
2018-10-17 13:14:10 -07:00
Dustin Carlino
d0f88f8d52
use new Trace for show_route plugin. handle 0-length turns
2018-10-09 14:36:53 -07:00
Dustin Carlino
d7a36889b2
some of the pieces to render smart arrows in front of agents
2018-10-09 12:56:58 -07:00
Dustin Carlino
7ca7f08ef7
refactoring focus pt per object
2018-10-08 16:20:45 -07:00
Dustin Carlino
403ef7d0ec
also move the buildings
2018-10-07 12:51:27 -07:00
Dustin Carlino
94ac54d7e8
stop using Color and Vec2d types from piston, to slowly move away from dependence on piston
2018-10-05 14:58:48 -07:00
Dustin Carlino
20a1bb7923
dispersing the remainders of map_model::geometry
2018-09-18 14:35:10 -07:00
Dustin Carlino
1050d86e67
making a proper Circle type in geom
2018-09-18 14:00:55 -07:00
Dustin Carlino
e8ef4545fb
remove to_vec from Pt2D; only need it in one triangulation-specific place
2018-09-18 13:44:14 -07:00
Dustin Carlino
49ebe97c21
small refactor in ezgui and polyline
2018-09-18 13:39:55 -07:00
Dustin Carlino
7dc192b0c9
refactoring helpers to draw lines
2018-09-18 13:29:30 -07:00
Dustin Carlino
e65f3aecc7
update to rust 1.29, re-run format
2018-09-15 16:54:00 -07:00
Dustin Carlino
0876315d50
make large.abst load, damnit!
...
- deal with loop lanes screwing up trim_lines
- give up when trim_lines fails and just keep the full geometry
- tune some epsilons
- delete duplicate turns instead of panicking
2018-09-08 21:16:58 -07:00
Dustin Carlino
f386278343
tuning EPSILON_DIST to make large.abst closer to loading
2018-09-08 19:48:11 -07:00
Dustin Carlino
f3982282de
speed up building creation by doing sidewalk finding in bulk
2018-09-08 13:28:09 -07:00
Dustin Carlino
ba9fe54c2a
trying to make medium map load!
...
- new polyline shifting that keeps a constant width, even at sharp
corners. it breaks and is slow when shifting just to make thick
polygons, so keep the old version around for that. actually, disable
it always. :(
- deal with bus stops on sidewalks with no associated driving lane
- more hacks to make dist_along_of_pt work for horiz/vertical lines
- handling bus stops close to the end of a sidewalk
2018-09-08 12:48:25 -07:00
Dustin Carlino
87a33a6c78
replaced parts of the polygon ear clipping and seemingly fixed all the
...
problems!
2018-09-07 15:03:28 -07:00
Dustin Carlino
c3d7595fc3
(slightly) smarter stop sign assignment
2018-08-24 12:46:09 -07:00
Dustin Carlino
f36c94c730
render individual points from extra KML, and refactor some circle helpers
2018-08-23 15:17:37 -07:00
Dustin Carlino
2a12c338cf
fixing up the parking test... had to deal with horizontal/vertical lines
...
for the building front path stuff
2018-08-23 10:37:17 -07:00
Dustin Carlino
82952ef198
remembering where the front path hits the sidewalk
2018-08-22 12:21:58 -07:00
Dustin Carlino
a2399f6613
trimming front paths to building edges
2018-08-22 11:54:18 -07:00
Dustin Carlino
bf52822e37
wrote a few tests of parking
2018-08-19 18:07:28 -07:00
Dustin Carlino
f45bc525d5
fix a few epsilon issues that made restoring from a savestate break
2018-08-15 15:37:07 -07:00
Dustin Carlino
6693147a99
WIP making driving cars park at a specific spot
2018-08-15 15:29:49 -07:00
Dustin Carlino
bf2bd09a54
WIP converting lanes and draw car to new polygon
2018-08-09 10:36:29 -07:00
Dustin Carlino
1b610aa708
making a proper polygon type, finally. using it in a few places, not all
...
yet
2018-08-08 18:00:10 -07:00
Dustin Carlino
5d2a4f3ac4
trying an ear clipping algorithm for buildings and parcels. works great,
...
lots of cleanup needed now!
2018-08-08 14:39:08 -07:00
Dustin Carlino
d0744083fc
stop right BEFORE intersections
2018-08-07 14:06:31 -07:00
Dustin Carlino
4c0a8f588a
still debugging various breakages. drawing lane IDs
2018-08-07 12:23:00 -07:00
Dustin Carlino
5ad6f53607
use new dimensioned version, letting us serialize maps and clean up
...
hacks elsewhere
2018-08-01 14:05:38 -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
a52b966b03
make some more pedestrian paths possible by forcing turns even when line trimming fails
2018-07-23 08:39:58 -07:00
Dustin Carlino
82fb302ddd
fixing nondeterministic map conversion
2018-07-22 17:14:07 -07:00
Dustin Carlino
5b018fdf06
adding tests for map conversion determinism
2018-07-22 17:09:12 -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
e5de791fa7
starting to model pedestrians. spawn and draw them.
2018-07-11 15:06:31 -07:00
Dustin Carlino
0e4ff75286
setting up an intersection test in experimental
2018-07-07 10:48:46 -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
ba310cbd45
removing geom crate, using just map model
2018-06-25 09:00:43 -07:00
Dustin Carlino
3838a1c4ac
extra lanes on one-ways
2018-06-19 13:39:10 -07:00
Dustin Carlino
4da2136dee
mostly fix curved roads, needed a different quad to fill in the gap
2018-06-19 12:14:53 -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
6a695740bd
paving the way for offsets
2018-06-18 15:25:17 -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
065c2ce9ba
Importing everything since the initial import
2018-04-10 17:51:37 -07:00