Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix buffer to remove inverted ring curves #706

Merged
merged 1 commit into from
Apr 12, 2021

Conversation

dr-jts
Copy link
Contributor

@dr-jts dr-jts commented Apr 12, 2021

This is a fix for the following buffer situation. It can happen that the sides of a small, convex polygon produce offset segments which all cross one another to form a curve with inverted orientation. This happens at buffer distances slightly greater than the distance at which the buffer should disappear. The inverted curve will produce an incorrect non-empty buffer (for a shell) or an incorrect hole (for a hole). It must be discarded from the set of offset curves used in the buffer.

Heuristics are used to reduce the number of cases which area checked, for efficiency and correctness.

This is a fix for the issue described in #472.

Signed-off-by: Martin Davis [email protected]

@dr-jts dr-jts self-assigned this Apr 12, 2021
@dr-jts dr-jts merged commit 354d1fa into locationtech:master Apr 12, 2021
@dr-jts dr-jts deleted the fix-buffer-ring-curve-inverted branch April 12, 2021 20:05
@dr-jts
Copy link
Contributor Author

dr-jts commented Apr 12, 2021

Fixes #472

See also GEOS 1101 and QGIS 41696.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant