FA-70374 / GIS polygon topology / Member archive
Ring vertex cleaning with snapping tolerance: distance metric · case 04
Diagonal jitter survives cleaning while axis-aligned jitter is removed.
Case contract
Input [ring, eps] where ring is an open or closed list of integer [x, y] positions and eps >= 0. Walk the ring and drop a position whose Chebyshev distance to the last KEPT position is <= eps. Then repeatedly drop trailing kept positions within eps of the first kept position. If fewer than 3 positions remain return None, else return the kept positions closed by repeating the first.
Why this case matters
Digitised boundaries carry jitter and duplicate clicks; cleaning must not let small steps accumulate into dropped corners or leave near-closing duplicates.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| control #10 | [[30, 78], [22, 36], [32, 33], [50, 13], [76, 40], [78, 38], [73, 49], [75, 47], [30, 78]] | [[30, 78], [22, 36], [32, 33], [50, 13], [76, 40], [73, 49], [30, 78]] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗