Commit Graph
100 Commits
Author SHA1 Message Date
Eric Fischer e7b4443838 Enforce code style 2015-07-08 14:42:12 -07:00
Eric Fischer 0ff6819efb Merge branch 'skip' of https://github.com/mapbox/tippecanoe into skip 2015-07-08 12:26:01 -07:00
Eric Fischer 6fd72d4518 Remove vacuum step, which doesn't seem to make .mbtiles smaller in practice
yet takes time and temporary disk space to perform
2015-07-08 12:25:09 -07:00
Eric Fischer c19c913bf9 Fix confusing error messages from sloppy copying and pasting of code 2015-07-08 11:52:22 -07:00
Eric Fischer 65f3737325 Use a hash table of binary trees for string pooling, not just a binary tree 2015-07-02 17:07:11 -07:00
Eric Fischer 1b72804358 Precalculate which child tiles a feature can overlap
instead of looping over them all
2015-07-01 15:17:35 -07:00
Eric Fischer 18cdcb0732 Drop linetos smaller than tile resolution before doing normal simplification
Since simplification is rather expensive
2015-07-01 12:16:50 -07:00
Eric Fischer af13a95dc1 Shard the child tiles as widely as possible even if not skipping levels
to help future parallelization
2015-07-01 12:04:45 -07:00
Eric Fischer b2fdcba6b0 Don't shrink string buffers before returning them as JSON objects.
It takes a little bit of time, and it's already not shrinking them
for number objects.
2015-06-30 17:21:48 -07:00
Eric Fischer 767a581874 Inline the I/O in the long long serialization loop 2015-06-30 16:47:25 -07:00
Eric Fischer 0d3192b863 Break rewriting the geometry for the next zoom out into its own function 2015-06-30 16:36:26 -07:00
Eric Fischer 530852ae00 Maximum zoom increment of 3 seems to give the best performance 2015-06-29 17:18:48 -07:00
Eric Fischer 4bb88e228a Fix buffer overflow. This is a bounding box, not sub-tiles. 2015-06-29 17:05:33 -07:00
Eric Fischer 7724e2c329 Skip over some intermediate zooms below minzoom 2015-06-29 16:42:26 -07:00
Eric Fischer efe3c62bb1 Start breaking the assumption that the next zoom is exactly 1 deeper 2015-06-29 16:16:38 -07:00
Eric Fischer 6951c1b72d Merge pull request #62 from mapbox/signedchars
Fix sign-extension bug with signed chars in attribute names
2015-06-21 11:20:23 -07:00
Eric Fischer 59faead7fa Fix sign-extension bug with signed chars in attribute names 2015-06-21 11:18:14 -07:00
Eric Fischer a42dbd7968 Merge pull request #60 from mapbox/cpp
Move zoom traversal into C++
2015-06-19 17:46:31 -07:00
Eric Fischer 62052cafab Move zoom traversal into C++ 2015-06-19 17:29:56 -07:00
Eric Fischer 265b6866db Merge pull request #59 from mapbox/smaller
Optimizations to reduce memory footprint
2015-06-19 17:08:00 -07:00
Eric Fischer e6c5aa9bfe Oops. Make sure that 0 stays 0 even when swizzling 2015-06-19 15:53:09 -07:00
Eric Fischer e6997b00ff Swizzle the string comparison so it's not pathological if input is presorted 2015-06-19 15:49:51 -07:00
Eric Fischer 498e723563 Yet another temp file, for the tree of pointers into the string pool 2015-06-18 16:30:51 -07:00
Eric Fischer dc3021656e Build the string pool in an appendable memory map, not the normal heap 2015-06-18 16:13:37 -07:00
Eric Fischer d96dee8dad Fix formatting again 2015-06-18 14:47:29 -07:00
Eric Fischer a185073f0a Shrink the geometry by shaving off bits below the maxzoom tile resolution 2015-06-18 14:16:16 -07:00
Eric Fischer 86a341c344 Merge pull request #57 from anandthakker/master
Update README to include buffer size units.
2015-06-18 12:39:00 -07:00
Eric Fischer a1d3ecf9bb Save another byte per attribute by moving the type to the string pool 2015-06-18 12:12:20 -07:00
Eric Fischer 1a44538bdf Use the first coordinates of the first feature as the origin for deltas 2015-06-18 10:52:01 -07:00
Eric Fischer 46626e4f08 Delta encoding for motion within features 2015-06-17 17:48:29 -07:00
Eric Fischer 725ea71e57 Fix formatting 2015-06-17 17:30:17 -07:00
Eric Fischer cde1e60603 Use a string pool to avoid duplicating keys and values 2015-06-17 17:18:08 -07:00
Eric Fischer 55e93a5d37 Use variable-length zigzag for ints and long longs 2015-06-17 16:46:36 -07:00
Eric Fischer 9b34f7e6e3 Merge pull request #54 from mapbox/badproj
Clearer message about projections
2015-06-05 10:35:02 -07:00
Eric Fischer d5d322f36a Clearer message about projections 2015-06-05 10:34:19 -07:00
Eric Fischer 448617e0a7 Merge pull request #53 from mapbox/badproj
Add a warning when data appears to be in the wrong projection
2015-06-05 10:24:13 -07:00
Eric Fischer 263ae94e75 Add a warning when data appears to be in the wrong projection 2015-06-05 10:23:25 -07:00
Eric Fischer 1a95504390 No need to write a loop to reindent the source files 2015-06-03 12:47:56 -07:00
Eric Fischer b70d19288e Get back in sync with json-pull 2015-06-03 11:31:41 -07:00
Eric Fischer fd60cc6600 Merge pull request #52 from mapbox/indentstyle
Consistent indent style with clang-format
2015-06-03 11:26:25 -07:00
Eric Fischer 8a1f0d83e1 Consistent indent style with clang-format 2015-06-03 11:22:13 -07:00
Eric Fischer d9ff3f78fc Update manpage 2015-06-03 11:12:01 -07:00
Eric Fischer 34b00eca73 Merge pull request #50 from mapbox/gl4096
Add a command line option to specify the minimum allowed tile extent
2015-06-03 11:11:16 -07:00
Eric Fischer 70291f0415 Merge pull request #51 from mapbox/fitsample
Flag to drop as many features as necessary to keep tiles under the size limit
2015-06-03 11:10:54 -07:00
Eric Fischer bc2f243f0b Add a command line option to specify the minimum allowed tile extent 2015-06-01 15:01:46 -07:00
Eric Fischer 6341419229 Punctuation and capitalization 2015-06-01 10:18:03 -07:00
Eric Fischer 38dc80ec68 Fix a place that wasn't checking for disk write errors 2015-05-20 18:04:34 -07:00
Eric Fischer 901f6a76b6 Keep the resolution constant as we drop features to make the tile fit 2015-05-20 15:15:45 -07:00
Eric Fischer 555ababd2e Add a flag to dynamically drop a fraction of features from large tiles 2015-05-20 14:57:00 -07:00
Eric Fischer 9e162e6f8f Merge pull request #35 from mapbox/dropline
Add a flag to let you drop lines at low zooms just like points
2015-04-28 16:50:46 -07:00
Eric Fischer 1381f0f276 Add a flag to let you drop lines at low zooms just like points 2015-04-21 08:19:51 -07:00
Eric Fischer 12fb2c969c Merge pull request #34 from mapbox/warn-no-features
Warn if no Features have been seen after 50 JSON hashes are closed.
2015-04-17 10:49:36 -07:00
Eric Fischer 167ec690a0 Warn if no Features have been seen after 50 JSON hashes are closed. 2015-04-17 10:48:03 -07:00
Eric Fischer 4f9edf7f29 Merge pull request #32 from mapbox/proto-doc
Add Linux package requirement to readme
2015-04-17 10:13:06 -07:00
Eric Fischer fa9474ff74 Add Linux package requirement to readme 2015-04-17 10:12:11 -07:00
Eric Fischer d64328ac35 Fix crash when encoding boolean properties. 2015-04-10 13:03:11 -07:00
Eric Fischer ed2f968b4e Merge pull request #30 from mapbox/prevent
Add flags to disable simplification/coalescing/limits when unwanted
2015-04-10 12:00:26 -07:00
Eric Fischer 4041811372 Add flags to disable simplification/coalescing/limits when unwanted 2015-04-10 11:36:30 -07:00
Eric Fischer 85919de490 Merge pull request #29 from mapbox/multilayer
Add multilayer support
2015-04-10 11:03:36 -07:00
Eric Fischer e66d976d55 Merge pull request #28 from mapbox/dot-size-doc
Dot size doc
2015-03-26 11:28:43 -07:00
Eric Fischer 1f8581c76c More doc text 2015-03-26 11:28:06 -07:00
Eric Fischer 0cd733eb77 Document how to choose high-zoom dot sizes 2015-03-26 11:25:56 -07:00
Eric Fischer fd8de691eb Fix layer name crash when reading from the standard input 2015-03-25 14:07:34 -07:00
Eric Fischer e95cc82678 Revise documentation for multiple layers 2015-03-25 14:00:27 -07:00
Eric Fischer a076c5619d Merge remote-tracking branch 'origin/master' into multilayer 2015-03-25 13:54:29 -07:00
Eric Fischer 86925eea4c Write out geometries for all layers 2015-03-24 17:07:51 -07:00
Eric Fischer 73b63133e2 Multiple layers make it into JSON metadata now 2015-03-24 16:28:31 -07:00
Eric Fischer 2198bcc2a6 Handle multiple reading. Multiple writing still crashes. 2015-03-23 17:44:23 -07:00
Eric Fischer f5135ebc63 Writing out the JSON metadata for multiple layers 2015-03-23 16:12:12 -07:00
Eric Fischer eb24c6e21e Include the layer number in the serialized geometry 2015-03-23 15:37:49 -07:00
Eric Fischer 3d074653b5 Merge pull request #26 from mapbox/gammafix
Clean up the gamma semantics a little.
2015-03-23 14:47:17 -07:00
Eric Fischer a880f44a91 Clean up the gamma semantics a little.
0 (default) means unchanged: maxzoom contains all the dots.

Positive number, even very small, means that it still checks
the gap size and thins out dots if they are close together.

Negative number means no gamma, and the old random instead of
uniform dropping at low zooms.
2015-03-23 14:44:21 -07:00
Eric Fischer 8002609f0c More scaffolding for multiple layers 2015-03-23 13:44:35 -07:00
Eric Fischer d370b07231 Scaffolding for layers within per-tile processing 2015-03-23 11:36:35 -07:00
Eric Fischer 26bcdef06b Clarify that base and lowest zoom are the same as maxzoom and minzoom 2015-03-18 17:23:08 -07:00
Eric Fischer 4549d1e4f4 Merge pull request #22 from mapbox/uniform
Add a dot-density gamma feature to thin out especially dense clusters
2015-03-09 13:54:33 -07:00
Eric Fischer f3e051a610 Clarify and correct gamma in README 2015-03-09 12:36:15 -07:00
Eric Fischer b59a251924 Write metadata even when tiling fails so you can look at the partial map 2015-03-06 16:33:32 -08:00
Eric Fischer f0a8e5b192 Progress indicator for reordering geometry 2015-03-06 15:32:52 -08:00
Eric Fischer 9343c5fcc1 Less wordy message about sorting 2015-03-06 14:35:39 -08:00
Eric Fischer 816ef2eca8 Flesh out README a little 2015-03-06 14:32:53 -08:00
Eric Fischer 41b28b2a1b Add dot gamma processing 2015-03-06 13:12:32 -08:00
Eric Fischer 558a7a412c Restore old code for uniform instead of random dot-dropping
From ffe4c95376
2015-03-06 10:56:02 -08:00
Eric Fischer 572df8ad39 Reorder the geometries by index 2015-03-05 16:18:01 -08:00
Eric Fischer a8b2db8d5a Fix double-close of top level geometry file 2015-03-05 15:22:58 -08:00
Eric Fischer 97d65e6b7d Bring back the index: now just a file position and a point 2015-03-05 15:15:56 -08:00
Eric Fischer b2eff13667 Impose a limit on the maximum number of features in a tile. 2014-12-19 14:33:39 -08:00
Eric Fischer 290e39f80c Improve function name 2014-12-19 11:56:40 -08:00
Eric Fischer 0b84f13159 Merge pull request #18 from mapbox/topdown
Work from the top down instead of from feature indices
2014-12-18 11:28:40 -08:00
Eric Fischer 5a2003cb2c Fix failure to release temporary memory 2014-12-17 17:41:57 -08:00
Eric Fischer 32010fc893 Oops. Do a lot less progress indicator I/O. 2014-12-17 17:08:04 -08:00
Eric Fischer 48b5db6ae5 Keep the progress indicator progressing while working through big tiles 2014-12-17 16:01:33 -08:00
Eric Fischer 7f3551070e Remove unneeded debug output 2014-12-17 14:01:20 -08:00
Eric Fischer 92bbf27f72 Merge branch 'master' into topdown
Conflicts:
	geojson.c
2014-12-17 11:18:47 -08:00
Eric Fischer cba1b8ae7f Remove unneeded old indexing code 2014-12-17 11:16:43 -08:00
Eric Fischer 0d0a546b1e No need to split features into child tiles when processing the final zoom. 2014-12-17 11:10:46 -08:00
Eric Fischer ad17f1f282 Make -Z0 work again for file minimum zoom 2014-12-17 11:05:14 -08:00
Eric Fischer 3b9f4691c1 Merge pull request #16 from mapbox/nullprop
Allow features to have null properties
2014-12-16 22:49:23 -08:00
Eric Fischer a40192bcde Allow features to have null properties 2014-12-16 22:46:00 -08:00
Eric Fischer c90ba8511f Fix compiler warning 2014-12-12 14:52:12 -08:00