[EMAIL PROTECTED] wrote:
I actually don't understand. As I see it the normal aa routine draws non-round 
circles when they should be round. That must be a bug. Why not just fix it?
[Message sent by forum member 'mikaelgrev' (mikaelgrev)]

While I can imagine this is frustrating, let me point out why things
behave the way that they do.

The circles are off because we have to massage the paths to meet some
basic rasterization expectations.  STROKE_PURE turns off that massaging
so that you can manage the problems yourself if you so wish.

If you use PURE, then as you've discovered the lines become fuzzy unless
you adjust them.  As you've already pointed out, the adjustment can get
tricky when dealing with arbitrary paths.

If we were to stop massaging the paths, then we'd have fuzzy lines like
you see with STROKE_PURE, but the circles would get rounder.

We could stop massaging them and then also bias all paths and then you
can choose whether you want fuzzy lines or fuzzy rectangles or both.  No
bias can have both sharp lines and sharp rectangles.

The massaging we apply under STROKE_NORMALIZE does manage to get basic
primitives like lines and rectangles to both be crisp, but it does so
with a more complicated adjustment than a simple bias that,
unfortunately, disturbs the aesthetics of some circles.

We can fix our massaging to work better, but such an algorithm that both
maintains the crispness of lines and rectangles and also preserves
nicely rounded curves has yet to be created.  You've already noted that
some sizes of circles are both crisp and round with AA and NORMALIZE - I
imagine that the other sizes have a basic mathematical conflict between
trying to look crisp and trying to be round that might not be solvable.
 And, if there is a normalization technique that might make circles
both round and crisp at all sizes, it might not work for the case of a
quarter circle connecting to a horizontal and a vertical line on either
side of it...all TBD...

Until then "fixing this bug" would mean creating some other condition
that would appear to be a bug to someone else.  Is a flat circle a worse
bug than a fuzzy horizontal or vertical line?

Hopefully with the magic of OpenJDK someone out there might be able to
come up with a better system...

                       ...jim

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to