Comment 2 for bug 1575127

Revision history for this message
Brynn (brynn4inks-deactivatedaccount) wrote : Re: Difference difference

Hi again!

Just stumbled on what appears to be this same problem, still happening in 0.92.3. (still Windows 7, 64 bit) (Inkscape 0.92.3 (2405546, 2018-03-11)) I have more info to add now. I'll edit the title to reflect the new info.

Please find attached another zip file with a couple of screenshots and another SVG file showing the problem.

First, in intersect_error.svg, bring the dark blue circle upward in z-order until it is immediately below the aqua colored object, and zoom in to the edge of the circle (approx 1600% on my screen, a 15 inch laptop).

A duplicate of the dark blue circle had been intersected with an aqua colored rectangle. Notice how at the midline of the circle, the intersection properly "cut" the rectangle at the edge of the circle. But as you scroll along the edge of the circle (while still zoomed), you can see that edges of the 2 objects diverge. Theoretically, the correct behavior should result in the edges being essentially identical. Yet the edge of the aqua object does not share the same edge as the circle, as it should.

In that same file, you can see that I experimented with rectangles of different widths. As long as the width of the rectangle is less than the width of the circle, the intersected edges diverge, rather than the edges being identical.

Notice the green object. The green rectangle was wider than the circle, and you can see (in both SVG and ie0.png) that when the other object is wider than the circle, the boolean performs properly, as expected. The edges do not diverge, as you follow them further and further away from the midline.

However, coincidentally, I had placed the green rectangle (which was wider than the circle) so that the top of the rectangle crossed the other midline of the circle, but by a relatively very small distance. Notice in the screenshot ie1.png how the edge of the green object diverges quite severely from the edge of the circle, just above the midline.

As I notice from those several experiments, the closer the object is to the midline of the circle, the more severely the edges diverge. And the further away from the midline the sides of the object lie, the less severe is the problem.

Summary
 -- This seems more related to circles than Difference (as I originally thought)
 -- It happens with Intersection as well as Difference. Although I didn't test other booleans, I wouldn't be surprised if the trend is repeated. (I don't have time to test further right now, but if someone reminds me, I probably can later on.) (days, weeks, months, just not today)
 -- The closer the edge is to the midlines of the circle, the more severe is the anomaly (and the further away, the less severe).
 -- If the other object is wider than the circle, there is no problem.

Let me know if I can provide any other docs or info for you. SVG file and screenshots attached.

Thank you very much :-)