Better method for rendering AA ellipses.
authorcommit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>
Mon, 6 May 2013 16:44:03 +0000 (16:44 +0000)
committercommit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>
Mon, 6 May 2013 16:44:03 +0000 (16:44 +0000)
commit1335264fce00389c7d82105a52626ea2f48d277a
tree296a30a2e2a866d2c7d9a84b03eed12cada1976f
parentfcc9ca09a56cd43015cc990898a55978bc2bf23d
Better method for rendering AA ellipses.

This uses the standard ellipse equation as a signed distance
test, and adjusts the result by the length of the gradient
at that point to get a better approximation of the distance
to the ellipse. It replaces the standard ellipse and
roundrect shader renderers.

Also adds a check to see if the curvature extrema of the
stroke are less than the curvature extrema of the ellipse (i.e.
the radius of curvature is larger). In this case, it's no
longer an ellipse and we can't use this renderer.

R=bsalomon@google.com, robertphillips@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/14938004

git-svn-id: http://skia.googlecode.com/svn/trunk@9016 2bbb7eff-a529-9590-31e7-b0007b416f81
src/gpu/GrOvalRenderer.cpp