Move dither toggle logic into common helper functions, to make it easier to
change their behavior later. No functional change.
Review URL: https://codereview.appspot.com/7241063
git-svn-id: http://skia.googlecode.com/svn/trunk@7525 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/effects/gradients/SkSweepGradient.cpp b/src/effects/gradients/SkSweepGradient.cpp
index 3cdac85..db18521 100644
--- a/src/effects/gradients/SkSweepGradient.cpp
+++ b/src/effects/gradients/SkSweepGradient.cpp
@@ -337,7 +337,7 @@
SkMatrix::MapXYProc proc = fDstToIndexProc;
const SkMatrix& matrix = fDstToIndex;
const uint16_t* SK_RESTRICT cache = this->getCache16();
- int toggle = ((x ^ y) & 1) * kDitherStride16;
+ int toggle = init_dither_toggle16(x, y);
SkPoint srcPt;
if (fDstToIndexClass != kPerspective_MatrixClass) {
@@ -361,7 +361,7 @@
for (; count > 0; --count) {
int index = SkATan2_255(fy, fx) >> (8 - kCache16Bits);
*dstC++ = cache[toggle + index];
- toggle ^= kDitherStride16;
+ toggle = next_dither_toggle16(toggle);
fx += dx;
fy += dy;
}
@@ -373,7 +373,7 @@
int index = SkATan2_255(srcPt.fY, srcPt.fX);
index >>= (8 - kCache16Bits);
*dstC++ = cache[toggle + index];
- toggle ^= kDitherStride16;
+ toggle = next_dither_toggle16(toggle);
}
}
}