22 Commits

Author SHA1 Message Date
Erica Fischer
a447dfc089 Extra coordinate precision; feature ordering; compression improvements
* Add an option to retain extra coordinate precision at maxzoom

* Make sure not to shift away the extra detail from coordinates

* Add an option to convert double-precision attributes to single

* Sort attribute values in tiles to make them compress a little better

* Slightly improve polygon simplification

By choosing a point that would be retained after simplification
to be the start/end point that always gets retained

* I regret making all of these tests involve polygons

* Add an option to specify the size of tiny polygons

* Fix accidental requiring of argument for --single-precision

* Guard against duplicate points when generating "sizes" for them

* Restore the intended behavior that tiny polygons don't get simplified

* Make the extra detail settable rather than always maximizing it

* Revert "Improve maxzoom guessing for tightly-clustered point data sources (#4)"

This reverts commit fec5e8354cff7ab6d64f00ea7db6da21c5c732c6.

* Add an option to prevent choosing a base zoom higher than the maxzoom

* Keep the drop rate high enough when the basezoom gets constrained

* Revert "Revert "Improve maxzoom guessing for tightly-clustered point data sources (#4)""

This reverts commit db6bc27d9e5bd6b5a218ba9a07117b4f1abb75fb.

* Add --order-by and --order-descending options

* Accept multiple --order-by and --order-descending-by sort keys
2022-09-06 13:08:11 -07:00
Erica Fischer
6978a0e102
Reindent with clang-format (#3) 2022-07-28 11:19:30 -07:00
Eric Fischer
32b14b1269 Limit detail to 30 and buffer 127 to prevent coordinate delta overflow 2018-12-18 15:53:11 -08:00
Eric Fischer
07ab900393 Report decompression errors in tippecanoe-decode 2018-07-13 17:02:49 -07:00
Eric Fischer
2318673108 Be more systematic about nulls and undefined attribute values
It is an error to write a null attribute to a tile, but
null attributes found within existing tiles will be decoded
into JSON as null.
2018-06-06 11:48:01 -07:00
Eric Fischer
fda0e1f28a Fix more cases of loss of precision for large magnitude integers 2017-11-09 13:56:07 -08:00
Eric Fischer
aa7191b1ee Also test large integers. Work around an apparent bug in strtoull. 2017-11-09 12:52:38 -08:00
Eric Fischer
87ce5b9310 Be more careful about checking for overflow when parsing numbers 2017-11-09 12:11:07 -08:00
Eric Fischer
c232e565db Working on testing against Mapbox GL JS filter tests 2017-09-01 16:27:27 -07:00
Eric Fischer
5665d08745 Support per-feature minzoom and maxzoom in geobuf 2017-08-30 11:44:57 -07:00
Eric Fischer
b301512860 Merge branch 'master' into plugins 2017-05-12 17:20:30 -07:00
Eric Fischer
30d54ff50d Tile-join had not been compressing its tiles. 2017-05-11 12:08:47 -07:00
Eric Fischer
94a15eaf85 Merge branch 'master' into plugins 2017-04-07 14:28:58 -07:00
Shan-Chun Kuo
aee12ac1fe Add flag --raw-tiles or -pC to get raw protobuf 2017-04-05 00:34:54 +01:00
Eric Fischer
7d47226444 Merge branch 'master' into plugins 2017-03-28 16:42:22 -07:00
Eric Fischer
8cf81483b1 Add missing #include 2016-12-08 10:31:27 -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
488dff0efb Encode the "id" field of GeoJSON objects as vector tile feature ID 2016-07-15 15:00:56 -07:00
Eric Fischer
2bc1b9bd91 Support feature IDs for decoding 2016-07-15 13:58:15 -07:00
Eric Fischer
c40ec6c194 Fix the tile layer version number in tile-join output 2016-06-16 12:31:48 -07:00
Eric Fischer
f1b3f6d231 Fix warnings about shadowed variables 2016-05-03 15:48:42 -07:00
Eric Fischer
b12413eddb Rename everything from .cc to .cpp to match other projects 2016-04-27 12:22:47 -07:00