Generalizations should not destroy coastline #26
Labels
No labels
claude-wip
map-report
map:is
map:se
needs-review
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
art/ismap#26
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Something that seems to only happen in Poland, going from z7 to z6 eats parts of the coastline. I would expect the coastline to get straighter when generalizing, but instead we get the sea flowing inland.
Location: z6 / 53.61912 / 16.64561
Area: circle r=17464 m @ 54.37540, 16.28263
In fact, this happens to lakes too, a lake shouldn't grow by eating neighboring land.
waterwaysandtransithave the same over-division as roads and rail #27Fixed by
absorb_boundaryin commit3ae69c3, and re-verified just now on top of the#36 work, which is the check that mattered: #36 adds
min_width_pixels, and a thinnesstest makes a narrow inlet an absorption candidate where an area test did not. Sweden's
archipelago is the hardest case for that and it did not move.
marine_water— the sea itself, at the zooms where the rollup still separates it frominland water:
km². The sea does not flow inland; three levels of generalization move it by a third of a
percent at worst.
The lakes half of the report ("a lake shouldn't grow by eating neighboring land") is
answered by the same table from the other side.
inland_waterover the same three levels:Iceland −0.06%, Sweden −5.05%, Poland −19.26%. Lakes shrink. That is small lakes with no
water neighbour absorbing into the land around them — the designed fallback, and ordinary
generalization rather than a moving shoreline.
The mechanism is a preference, not a prohibition, and that is deliberate: a rule that
could refuse to absorb would have to leave the polygon in place, pinning every islet in
every lake at every zoom. An island with nothing but lake around it still drops into the
lake; a coastal field with fields inland of it stays a field. Written up in
conf/common.yaml(thecovercontract) anddocs/performance.md.Checked visually over CDP in real time at z5–z9 for all three countries: coastlines read as
coastlines, with no inland lobes.
waterwaysandtransithave the same over-division as roads and rail #27