[OpenJDK 2D-Dev] RFR 8144718: Pisces / Marlin Strokers may generate invalid curves with huge coordinates and round joins
Jim Graham
james.graham at oracle.com
Tue Dec 8 01:30:21 UTC 2015
Looks good.
...jim
On 12/5/15 8:33 AM, Laurent Bourgès wrote:
> Jim,
>
> here is the updated webrev:
> http://cr.openjdk.java.net/~lbourges/marlin/Stroker-8144718.1/
>
> Changes:
> - added the comment you proposed
> - Marlin: use precomputed invHalfLineWidth2Sq = 1f / (2f * lineWidth2 *
> lineWidth2) for performance
> - fix copyright date in Pisces Stroker
>
> Laurent
>
> 2015-12-05 0:00 GMT+01:00 Jim Graham <james.graham at oracle.com
> <mailto:james.graham at oracle.com>>:
>
> I'd make the test >= 0.5 since 0.5 generates a flat curve as well.
>
> And it couldn't hurt to mention that we are worried about round off
> error since someone coming along might wonder why we're worried that
> a cos() is > 1:
>
> // check round off errors producing cos(ext) > 1 and a NaN below
> // cos(ext) == 1 implies colinear segments and an empty join anyway
>
> ...jim
>
>
> On 12/4/15 8:33 AM, Laurent Bourgès wrote:
>
> Hi,
>
> Please review this webrev fixing the Stroker bug in both Pisces &
> Marlin (same changes):
> bug: https://bugs.openjdk.java.net/browse/JDK-8144718
> webrev:
> http://cr.openjdk.java.net/~lbourges/marlin/Stroker-8144718.0/
>
> As this bug is very difficult to reproduce (artefacts), I just
> provide a
> simple test class that reproduces the issue.
>
> Regards,
> Laurent Bourgès
>
>
>
>
> --
> --
> Laurent Bourgès
More information about the 2d-dev
mailing list