You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
during my endeavor to implement offseting of "open path sections" of a closed paths i discovered an unexpected behavior.
It is not explicitly communicated in the documentation, but you can kind of read it like "every vertex which does not map to an input vertex will trigger the z callback". Of course that's just my interpretation.
This leads to an interesting, unexpected side effect with usage of Z coordinates.
Consider this polygon, i attach the point indices as z coordinates:
The intermediate solution passed to the simplify looks like this:
The offset leads to exactly collinear, even identical, edges in the narrow section.
The vertex of interest is at the end of these edges.
The XY coordinates are identical and thus they could be considered the same, the Z coordinates are not.
I think it would be consistent to trigger the z callback during the clean up of this horizontal spike if Z coordinates are used.
Here you can see the data attached to the output of the simplify from my point tracing.
I expected to see 2 2 | 5 5 here, because the vertex is the result of the touching end points of the two edges, which i'd call "edges from a point source" (JoinType::Square in this case).
Currently, the Z-coordinate / one of the two input points are chosen arbitrarily.
Here the code reproducing the issue (a z callback needs to be added).
Hello Angus,
during my endeavor to implement offseting of "open path sections" of a closed paths i discovered an unexpected behavior.
It is not explicitly communicated in the documentation, but you can kind of read it like "every vertex which does not map to an input vertex will trigger the z callback". Of course that's just my interpretation.
This leads to an interesting, unexpected side effect with usage of Z coordinates.
Consider this polygon, i attach the point indices as z coordinates:
The intermediate solution passed to the simplify looks like this:
The offset leads to exactly collinear, even identical, edges in the narrow section.
The vertex of interest is at the end of these edges.
The XY coordinates are identical and thus they could be considered the same, the Z coordinates are not.
I think it would be consistent to trigger the z callback during the clean up of this horizontal spike if Z coordinates are used.
Here you can see the data attached to the output of the simplify from my point tracing.
I expected to see 2 2 | 5 5 here, because the vertex is the result of the touching end points of the two edges, which i'd call "edges from a point source" (JoinType::Square in this case).
Currently, the Z-coordinate / one of the two input points are chosen arbitrarily.
Here the code reproducing the issue (a z callback needs to be added).
Regards, Lars
The text was updated successfully, but these errors were encountered: