Commit Graph
45 Commits
Author SHA1 Message Date
Erica Fischer a009d9fef7 Revert "Self-intersections in the same feature don't count"
This reverts commit e04b19916e.
2023-09-08 17:02:57 -07:00
Erica Fischer e04b19916e Self-intersections in the same feature don't count 2023-09-08 15:30:48 -07:00
Erica Fischer af5035f9d3 Fix collapse of islands to shards 2023-09-08 14:34:34 -07:00
Erica Fischer b5bf9d7dc5 Almost right, I think! 2023-09-08 11:52:30 -07:00
Erica Fischer 25265a9cdb Stabilize choice of which three points to keep with different windings 2023-09-08 11:07:18 -07:00
Erica Fischer f84a47556c Resolve the test conflicts 2023-09-07 16:51:36 -07:00
Erica Fischer 92434d4a0a Pull clipping and scaling code back out into clip.cpp 2023-09-07 16:48:12 -07:00
Erica Fischer 84c278ff96 All the tests change again 2023-09-07 16:37:59 -07:00
Erica Fischer ba6bc08de6 Fix known cases of integer overflow 2023-09-07 16:36:28 -07:00
Erica Fischer 1ccbb6306c Fix most of the overflow errors 2023-09-07 16:36:20 -07:00
Erica Fischer 8476fdf282 More attempts to solve failures to simplify consistently 2023-09-07 16:36:11 -07:00
Erica Fischer 6551b2cc0e Stay in integers in line simplification 2023-09-07 16:36:08 -07:00
Erica Fischer 92561f5a90 All the features that touch tile 6/16/23 2023-09-07 16:35:24 -07:00
Erica Fischer 8c115eaee1 Add a few more nearby borders 2023-09-07 16:35:17 -07:00
Erica Fischer 140a7b2a68 Are these three features enough to demonstrate the problem? 2023-09-07 16:35:06 -07:00
Erica Fischer 16ba786db7 Replace more floating point with integer 2023-09-07 16:34:55 -07:00
Erica Fischer 2dc427ca5d Check whether behavior is consistent with intentional simplification 2023-09-07 16:34:48 -07:00
Erica Fischer 6b18543062 Don't simplify after coalescing if they said no simplification 2023-09-07 16:34:40 -07:00
Erica Fischer 4465458819 Try clipping in integers instead of floating point 2023-09-07 16:34:24 -07:00
Erica Fischer 089b2fd2e6 Just reversal no coalescing 2023-09-07 16:32:44 -07:00
Erica Fischer e5a8df18a3 Just forget that line reversal exists for a minute 2023-09-07 16:32:35 -07:00
Erica Fischer 10747c0dd1 Also makes no difference... 2023-09-07 16:32:26 -07:00
Erica Fischer 9c3ed8e331 Was still truncating instead of rounding in projection 2023-09-07 16:31:32 -07:00
Erica Fischer 81d1a7ec9a The discrepancy seems to be introduced in reordering. No obvious bug 2023-09-07 16:30:21 -07:00
Erica Fischer d346b674e0 Another attempt to narrow it down 2023-09-07 16:30:13 -07:00
Erica Fischer 7410167305 Revert "Narrow down where the discrepancy comes in"
This reverts commit 221c4c5fc0ac9a6567e091c6a94b3d87dc8ade83.
2023-09-07 16:30:01 -07:00
Erica Fischer d8f5589f84 Narrow down where the discrepancy comes in 2023-09-07 16:29:52 -07:00
Erica Fischer 57a4e5866a One more place I should have rounded 2023-09-07 16:29:45 -07:00
Erica Fischer c44ba31b26 Fix cases where nodes were not being added at the tile boundary 2023-09-07 16:29:35 -07:00
Erica Fischer d7900c445f Actually do the shared edge detection 2023-09-07 16:29:26 -07:00
Erica Fischer 6f43f51b00 Scale geometry up before wagyu to prevent changes from precision loss 2023-09-07 16:29:15 -07:00
Erica Fischer 34188a1d4d Track nodes added at tile edges during clipping 2023-09-07 16:26:53 -07:00
Erica Fischer fde8e944aa Clip in floating point, not integers, which makes no difference 2023-09-07 16:26:42 -07:00
Erica Fischer 30526cac3c Make it round, not truncate, which reverts the last commit's test diffs 2023-09-07 16:26:01 -07:00
Erica Fischer 6f14cd77c8 Restore non-Wagyu polygon clipping from prior to 2fdec7d2 2023-09-07 16:25:54 -07:00
Erica Fischer db032c746a Round instead of truncating when clipping lines 2023-09-07 16:25:16 -07:00
Erica Fischer 32acc8b63f Stabilize line simplification to behave the same regardless of winding 2023-09-07 16:25:07 -07:00
Erica Fischer d09bae801c Put all of this back in geometry.cpp for conflict resolution 2023-09-07 16:23:30 -07:00
Erica Fischer 4ea8a37611 Accept tilestats limiting options in tile-join, not just tippecanoe (#8) 2022-08-12 13:57:04 -07:00
Erica Fischer fec5e8354c Improve maxzoom guessing for tightly-clustered point data sources (#4)
* Improve maxzoom guessing for tightly-clustered point data sources

* Go back to the old distance estimate, since it is less mysterious

* Update changelog and version
2022-08-11 10:13:54 -07:00
Erica Fischer a9bf6cacd4 Add --smallest-maximum-zoom-guess to specify a minimum maxzoom to guess (#2)
* Add --maximum-zoom-at-least to specify a minimum maxzoom to guess

* Check whether the specified minimum maxzoom is out of range

* Rename the option to --smallest-maximum-zoom-guess

* Update tests, changelog, and version
2022-08-11 10:04:03 -07:00
Erica Fischer 86f3e98c02 Track the desired tile size for each zoom level in tileset metadata (#7) 2022-08-11 09:58:00 -07:00
Erica Fischer c65d6938a4 Drop or coalesce points too when dropping or coalescing smallest (#6)
* Handle points too when dropping or coalescing the "smallest" features.

* Add statistics of tile size reduction strategies to tileset metadata

* Update changelog and version

* Update documentation
2022-08-09 15:29:03 -07:00
Erica Fischer 67cd9d8d85 Reduce tippecanoe memory usage (#5)
* Change JSON objects to a union type to use less memory

* Stop storing the string representation of JSON numbers

* Restore the ability to create features with large integer attributes

* Make sure large-integer feature IDs still behave as before

* Add missing #include

* Don't preallocate as much space for arrays and objects

* Treat inability to check free disk space as a warning, not an error

* Update changelog and version
2022-08-09 15:18:51 -07:00
Erica Fischer 6978a0e102 Reindent with clang-format (#3) 2022-07-28 11:19:30 -07:00