An unrelated input polygon vertex disappeared after a union operation
- Langage dominant
- C++
- Étoiles
- 517
- Forks
- 232
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
When uniting the following two polygons
A: `POLYGON((-8 0,-10 0,-10 4,10 4,10 0,8 0,4 0,0 0,-8 0))`
B: `POLYGON((0 2,4 2,4 0,4 -2,0 -2,0 0,0 2))`
The union result is
`MULTIPOLYGON(((4 -2,0 -2,0 0,-8 0,-10 0,-10 4,10 4,10 0,4 0,4 -2)))`
But the expected result is
`MULTIPOLYGON(((4 -2,0 -2,0 0,-8 0,-10 0,-10 4,10 4,10 0,8 0,4 0,4 -2)))`
The vertex `POINT(8 0)` was erased by a call to `detail::overlay::append_no_collinear` inside of `travel_to_next_turn`. The expectation is that any input vertex lying on the result boundary must be a result vertex.
AFAIU, the problem was introduced in d0ca69a058. And according to the commit message the expected invariant holds.

Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.