Erica Fischer
6742e895ab
Don't scale down geometry if we are going to look for shared nodes
2023-09-08 17:06:12 -07:00
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