mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-07 12:08:16 +02:00
(IcRasterizeTrapezoid): Fix the above correction so that it doesn't force 0 alpha when the left edge is positioned above but slopes so as to contain some of the pixel.
This commit is contained in:
parent
46baad20ee
commit
b0de4a7d09
2 changed files with 9 additions and 2 deletions
|
|
@ -3,6 +3,9 @@
|
||||||
* src/ictrap.c (IcRasterizeTrapezoid): Force alpha to 0 when the
|
* src/ictrap.c (IcRasterizeTrapezoid): Force alpha to 0 when the
|
||||||
left edge is entirely above top. (This is a workaround for some
|
left edge is entirely above top. (This is a workaround for some
|
||||||
bizarre edge effects in the current algorithm).
|
bizarre edge effects in the current algorithm).
|
||||||
|
(IcRasterizeTrapezoid): Fix the above correction so that it
|
||||||
|
doesn't force 0 alpha when the left edge is positioned above but
|
||||||
|
slopes so as to contain some of the pixel.
|
||||||
|
|
||||||
2005-01-07 Carl Worth <cworth@cworth.org>
|
2005-01-07 Carl Worth <cworth@cworth.org>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1233,8 +1233,12 @@ IcRasterizeTrapezoid (pixman_image_t *pMask,
|
||||||
* situations. This defect in the algorithm is bad enough
|
* situations. This defect in the algorithm is bad enough
|
||||||
* that we plan to discard the current approach
|
* that we plan to discard the current approach
|
||||||
* entirely. But in the meantime, we do want to have the
|
* entirely. But in the meantime, we do want to have the
|
||||||
* correct alpha == 0 in these cases. */
|
* correct alpha == 0 in these cases.
|
||||||
if (left.lower.y < y)
|
*
|
||||||
|
* The left edge is entirely "above" if its lower y
|
||||||
|
* coordinate is less than y, *and* its slope is positive.
|
||||||
|
*/
|
||||||
|
if (left.lower.y < y && left.m > 0)
|
||||||
alpha = 0;
|
alpha = 0;
|
||||||
else
|
else
|
||||||
alpha = (RectAlpha (pixel_y, y, y_next, depth)
|
alpha = (RectAlpha (pixel_y, y, y_next, depth)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue