Description
In function polygons_by_polyhedron
, module constrain_geometry
, there is an issue relating to the identification of segments in a polygon which crosses the polyhedron boundary: The polygon segment is divided into subsegments at the crossing with the polyhedron boundary, and every second subsegment is assumed to be inside and outside the polyhedron. This enables us to deal with non-convex polyhedron.
However, in the case where the polyhedron boundary contains several parallel polygons (e.g. a boundary surface has been triangulated for some reason), and the polygon has a segment that lies within this surface, the reasoning fails: The function detects several intersections between the main polygon and the false polyhedron boundary, thus which subsegments are identified as interior to the polyhedron is essentially random.
The error is not likely to have major practical consequences, and a fix is not obvious. The issue is reported here, and will be noted in the code, for reference.