[cairo] Using tolerance to control bevel substitution for miters

Keith Packard keithp at keithp.com
Wed Jan 2 22:53:44 PST 2008

In October, Carl added another condition for selecting bevel joins when
the miter was so small that numeric precision can cause unstable

I believe this computation is incorrect as it mixes device-unit
'tolerance' with user-unit 'line_width' values. The result is that when
the line_width is small, but the scale is large, a miter join will be
used even when inappropriate.

Please find a test case attached which demonstrates the bug; the two
paths should produce identical results, but the one drawn with a large
scale factor is beveled.

keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: miter-precision.c
Type: text/x-csrc
Size: 2529 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080102/23bdd299/attachment.c 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.cairographics.org/archives/cairo/attachments/20080102/23bdd299/attachment.pgp 

More information about the cairo mailing list