Eric Fischer
|
6a5461763c
|
Fix reordering of attributes and failure to update layer name table
|
2016-12-20 16:41:23 -08:00 |
|
Eric Fischer
|
4fc671f1d1
|
Merge branch 'master' into plugins
|
2016-12-14 11:29:58 -08:00 |
|
Eric Fischer
|
56e1f55bb6
|
Fix warnings identified by g++
|
2016-12-13 17:54:55 -08:00 |
|
Eric Fischer
|
af3d48e5b3
|
Fix integer overflow identified by -fsanitize=integer
|
2016-12-13 16:19:38 -08:00 |
|
Eric Fischer
|
c2fa8e3633
|
Switch the segment and layer ID based on prefilter output
|
2016-12-12 17:00:45 -08:00 |
|
Eric Fischer
|
9c0e2cdfa7
|
Fill out layermaps when reading the output of the prefilter
|
2016-12-12 16:08:08 -08:00 |
|
Eric Fischer
|
5e7f718afc
|
Fill out layermaps when reading the output of the postfilter
|
2016-12-12 15:21:05 -08:00 |
|
Eric Fischer
|
5dc773ffae
|
Carry attribute keys and values through from the prefilter
|
2016-12-09 15:54:47 -08:00 |
|
Eric Fischer
|
0e5b513637
|
Start getting features (just geometry so far) back from the prefilter
|
2016-12-09 15:35:57 -08:00 |
|
Eric Fischer
|
a338f5390f
|
Fix where I was closing the prefilter pipe in the wrong thread
|
2016-12-09 14:15:17 -08:00 |
|
Eric Fischer
|
c8a8915064
|
Push prefilter writing into a thread (but something is crashing)
|
2016-12-09 14:01:07 -08:00 |
|
Eric Fischer
|
9f10f48bfb
|
Pull feature deserialization and rewriting out of the loop
|
2016-12-09 11:53:50 -08:00 |
|
Eric Fischer
|
5194a39c16
|
Factor out clipping to tile boundaries; test random attributes & layers
|
2016-12-09 10:47:03 -08:00 |
|
Eric Fischer
|
daf1941ba9
|
Add missing #include
|
2016-12-08 17:22:07 -08:00 |
|
Eric Fischer
|
569825324a
|
Factor out feature deserialization
|
2016-12-08 17:11:37 -08:00 |
|
Eric Fischer
|
16df86c26e
|
Set up and tear down the prefilter pipeline
|
2016-12-08 16:13:02 -08:00 |
|
Eric Fischer
|
d1dc310bbc
|
The GeoJSON-producing part of prefiltering
|
2016-12-08 15:13:38 -08:00 |
|
Eric Fischer
|
5960a15fcd
|
Add magic #defines to avoid default small Mac stdio limits
|
2016-12-08 12:33:02 -08:00 |
|
Eric Fischer
|
3f14a0dd55
|
Factor out conversion from JSON types to vector tile attribute types
|
2016-12-07 16:17:17 -08:00 |
|
Eric Fischer
|
5554b9cbba
|
Add the command-line option to specify the filter
|
2016-12-07 12:15:57 -08:00 |
|
Eric Fischer
|
58e268777c
|
Missed a file for the close-on-exec flag
|
2016-12-07 11:19:29 -08:00 |
|
Eric Fischer
|
87d86ecfc9
|
Set close-on-exec flag for most file descriptors
|
2016-12-07 10:57:56 -08:00 |
|
Eric Fischer
|
94bebbd276
|
Write GeoJSON to the filter and read (but don't parse) what comes back
|
2016-12-06 17:19:22 -08:00 |
|
Eric Fischer
|
e8c5759f70
|
Dot-dropping doesn't apply if there is a per-feature minzoom tag
|
2016-12-06 15:36:10 -08:00 |
|
Eric Fischer
|
0db8d9ed8b
|
Option to snap low zooms to a stairstep grid
|
2016-11-28 15:45:38 -08:00 |
|
Eric Fischer
|
c867ce5f32
|
Stop --drop-smallest-as-needed from always dropping all points
|
2016-11-23 13:57:32 -08:00 |
|
Eric Fischer
|
e9aa8c1b7d
|
Add an option to prevent tiny polygon reduction
|
2016-11-21 11:26:37 -08:00 |
|
Eric Fischer
|
dc9e68b128
|
Make feature-dropping option names a little more consistent
|
2016-11-17 12:40:11 -08:00 |
|
Eric Fischer
|
5479e59aa9
|
Save another byte in features that have no metadata
|
2016-11-17 10:11:59 -08:00 |
|
Eric Fischer
|
439b544c8c
|
Don't serialize the feature sequence number unless needed for -pi
|
2016-11-16 17:35:25 -08:00 |
|
Eric Fischer
|
9ea29601ab
|
Don't let line simplification reduce a polygon ring to below 3 points
|
2016-11-14 11:22:21 -08:00 |
|
Eric Fischer
|
32aa653082
|
Don't spend geometry space on index or extent unless it is needed
|
2016-11-11 17:37:46 -08:00 |
|
Eric Fischer
|
013e6512b4
|
Add an option to drop the smallest features to make tiles small enough
|
2016-11-09 17:09:05 -08:00 |
|
Eric Fischer
|
38ce49d2d4
|
Another option for plain fractional dropping, but across the whole zoom
|
2016-11-04 12:26:13 -07:00 |
|
Eric Fischer
|
700ca489c7
|
Fix flakiness: don't decrease the global feature gap
|
2016-11-03 17:49:32 -07:00 |
|
Eric Fischer
|
a8bdbe8012
|
Fix the progress indicator when doing two passes over each zoom level
|
2016-11-03 17:13:11 -07:00 |
|
Eric Fischer
|
689f2ef7e9
|
Make better guesses about what gap will make a tile small enough
|
2016-11-02 16:57:35 -07:00 |
|
Eric Fischer
|
2e3ba8f374
|
Retain original feature index rather than recalculating
For better density calculation of clipped features
|
2016-11-02 15:11:22 -07:00 |
|
Eric Fischer
|
d0db3323fb
|
Binary search to find gap that leaves the desired fraction of features
|
2016-11-02 14:25:04 -07:00 |
|
Eric Fischer
|
2e026f9b3b
|
Use float instead of double in tiles if the value comes out the same
|
2016-10-27 14:37:46 -07:00 |
|
Eric Fischer
|
80e5159144
|
Remove dead code
|
2016-10-26 16:00:59 -07:00 |
|
Eric Fischer
|
8296190487
|
Remove leftovers from early versions of --detect-shared-borders
|
2016-10-26 15:47:26 -07:00 |
|
Eric Fischer
|
7727b3a92c
|
Start each tile's gamma/mingap at the same point to help flaky tests
|
2016-10-26 10:40:53 -07:00 |
|
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 |
|
Eric Fischer
|
4638c6f273
|
Merge branch 'master' into inline-meta2
Conflicts:
tile.cpp
|
2016-05-23 15:57:28 -07:00 |
|
Eric Fischer
|
f0e90620e4
|
A little more structure packing
|
2016-05-11 14:47:23 -07:00 |
|
Eric Fischer
|
c0edefa721
|
Pack structures tighter to use a little less memory
|
2016-05-11 14:23:39 -07:00 |
|
Eric Fischer
|
3655a54d22
|
Add the ability to inline metadata with geometry
|
2016-05-10 16:46:45 -07:00 |
|
Eric Fischer
|
5cc6d97d9f
|
Don't let polygons with nonzero area disappear during cleaning
If they collapse, turn them into placeholder squares with the
appropriate area so that there aren't visible coverage gaps.
|
2016-05-05 13:42:32 -07:00 |
|
Eric Fischer
|
0f1d2e4220
|
Fix additional g++ warnings
|
2016-05-03 16:39:26 -07:00 |
|
Eric Fischer
|
f1b3f6d231
|
Fix warnings about shadowed variables
|
2016-05-03 15:48:42 -07:00 |
|