65 Commits

Author SHA1 Message Date
Eric Fischer
10fc9254d1 Add an option to discover the minimum workable gap between features 2016-10-25 16:28:32 -07:00
Eric Fischer
db859e8801 Reorder which tile-shrinking strategy to try first 2016-10-25 15:21:00 -07:00
Eric Fischer
667e8f7a29 Use the same discovered gamma across all tiles of a zoom level 2016-10-25 14:13:55 -07:00
Eric Fischer
4b3fc4aebe Track the new identity of merged polygons so they can be merged further 2016-10-25 10:01:18 -07:00
Eric Fischer
057d7b759c Iterate over arcs, not polygons, when merging 2016-10-24 17:58:26 -07:00
Eric Fischer
2798bf7b6f Add an option to merge adjacent polygons together to reduce tile size 2016-10-24 17:22:07 -07:00
Eric Fischer
f32916c472 Tests of the three current strategies for reducing tile size 2016-10-24 15:33:14 -07:00
Eric Fischer
7cb7fc4913 Fix where I was inserting the copied ring in backwards order 2016-10-24 15:06:57 -07:00
Eric Fischer
3cc95231ec Work on merging together adjacent polygons to reduce tile size 2016-10-24 15:06:49 -07:00
Eric Fischer
83e73e8840 Add an option to dynamically increase gamma until tiles are small enough 2016-10-24 12:29:36 -07:00
Eric Fischer
92cc08a554 Fix some compiler warnings about signed comparisons 2016-10-14 17:11:57 -07:00
Eric Fischer
82377944ee Merge branch 'master' into consistent-dropping 2016-10-14 15:35:35 -07:00
Eric Fischer
71bf20b205 Remove debug output 2016-10-14 12:30:54 -07:00
Eric Fischer
feb9b4481a Stabilize edge list order by also comparing ring IDs 2016-10-14 12:27:24 -07:00
Eric Fischer
a5d803aa9a Lots of debug output to try to track down Mac/Linux differences 2016-10-14 12:15:23 -07:00
Eric Fischer
081e330845 Reset counter with each tile, to match old low-zoom feature density 2016-10-12 09:49:25 -07:00
Eric Fischer
5ab41417fc Calculate feature-dropping (except gamma) during geometry reordering 2016-10-10 17:15:33 -07:00
Eric Fischer
c8a1b082e0 Don't serialize the per-feature minzoom until geometry merging time 2016-10-10 15:31:09 -07:00
Eric Fischer
896c9d8398 Rename option to --detect-shared-borders and add a test 2016-10-06 16:16:51 -07:00
Eric Fischer
7258643d5a A sorted list is smaller and faster than a map of sets 2016-10-05 17:16:18 -07:00
Eric Fischer
4c1b135848 Save a little time by only looking up each segment once 2016-10-05 17:16:18 -07:00
Eric Fischer
46b634ce46 Remember to close the polygon 2016-10-05 17:16:18 -07:00
Eric Fischer
6455b6633e Remember to honor --no-line-simplification if it was requested 2016-10-05 17:16:18 -07:00
Eric Fischer
938274aa91 Remove more debugging code 2016-10-05 17:16:18 -07:00
Eric Fischer
2b4280695f Extract common edges, simplify, then reassemble polygon rings 2016-10-05 17:16:18 -07:00
Eric Fischer
d35dc4936a If a point divides one border, it divides any that touch there 2016-10-05 17:16:18 -07:00
Eric Fischer
57cc343855 Most of the way toward TopoJSON-style factoring out of edges 2016-10-05 17:16:18 -07:00
Eric Fischer
91bfc2ca89 Choose a consistent starting point for rings with no shared edges 2016-10-05 17:16:18 -07:00
Eric Fischer
59619fb6cd Crunch out zero-length linetos to improve the match 2016-10-05 17:16:18 -07:00
Eric Fischer
6b4076684c Find a common-edge transition if it's the first point of the ring 2016-10-05 17:16:18 -07:00
Eric Fischer
2bc9e15975 Roll rings around so they start at an intersection transition, if any 2016-10-05 17:16:18 -07:00
Eric Fischer
f7daa05515 Add a critical point where the set of rings using a polygon edge changes 2016-10-05 17:16:18 -07:00
Eric Fischer
4dd3411c64 Merge branch 'master' into named-layer 2016-08-30 15:33:51 -07:00
Eric Fischer
d8ba9db386 Remove unused layer count and layer name list 2016-08-30 15:09:18 -07:00
Eric Fischer
1bed572350 Rename variables for clarity 2016-08-30 15:05:33 -07:00
Eric Fischer
1f53491009 Tile by layer names instead of by layer numbers 2016-08-30 14:59:53 -07:00
Eric Fischer
3e881a428c Make a reverse-mapping table from layer IDs to names 2016-08-30 14:38:30 -07:00
Eric Fischer
31d2a3738a Get rid of the old file_keys 2016-08-30 13:46:37 -07:00
Eric Fischer
531c238c5b Pass the layer maps through into tiling 2016-08-29 17:42:46 -07:00
Eric Fischer
9161b74d99 Don't try to revive a placeholder for a degenerate polygon with negative area 2016-08-24 12:34:28 -07:00
Eric Fischer
8b339abd40 Use the same serialization in both places, and add sanity checks 2016-08-08 17:08:36 -07:00
Eric Fischer
67272bfe4a Move polygon winding fixup out of tiling and into parsing 2016-08-01 17:35:37 -07:00
Eric Fischer
488dff0efb Encode the "id" field of GeoJSON objects as vector tile feature ID 2016-07-15 15:00:56 -07:00
Eric Fischer
9908db5e56 Add an option to vary the level of line and polygon simplification 2016-07-12 16:51:56 -07:00
Eric Fischer
cb45f1c3bd That's still not right. Don't generate a tile with no layers. 2016-07-12 15:56:57 -07:00
Eric Fischer
d127c43566 Be even more careful not to produce features with empty geometry 2016-07-11 17:45:12 -07:00
Eric Fischer
40f2f61d98 Fix double-counted progress in the progress indicator 2016-07-08 15:49:59 -07:00
Eric Fischer
20b0fe1a52 Revert unneeded change 2016-05-27 16:35:46 -07:00
Eric Fischer
692112ec3a Add an option to calculate feature density as a feature attribute 2016-05-27 16:25:40 -07:00
Eric Fischer
1d636e5c0d Consistently treat "prevent" and "additional" options as globals 2016-05-25 11:38:52 -07:00