Comment 9 for bug 168158

Revision history for this message
Alvin Penner (apenner) wrote :

    Just writing to comment on the source of the numerical error. All these operations, except for Cut Path, call the routine Shape::ConvertToShape, which in turn calls a routine called Round(), which rounds off all the coordinates to the nearest 1/32 px. = 0.03125 px. = 0.0088 mm. Round() is defined in Shape.h. The quantization of the coordinates can be seen by inspecting them in the XML editor, where they will show up as multiples of 0.03125. As far as I can tell, the numerical errors shown in this report are within the tolerance of 1/32 px.
    Unfortunately, fixing this would be difficult, because the concept of a finite grid appears to be essential to this particular algorithm, and this routine is also used elsewhere, for example in Path->Stroke To Path, see Bug 820425.