[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".