Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(127)

Unified Diff: src/core/SkBitmapProcState.cpp

Issue 1539083002: [Reland] Repeating SkBitmapProcState rounding bias (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: corrected comment Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/core/SkBitmapProcState.cpp
diff --git a/src/core/SkBitmapProcState.cpp b/src/core/SkBitmapProcState.cpp
index 487bd80402609f454b894e5e124eb5d8eb20c9eb..9c58cc14414407487bc777d07bda6d88ae3eb3c3 100644
--- a/src/core/SkBitmapProcState.cpp
+++ b/src/core/SkBitmapProcState.cpp
@@ -820,15 +820,10 @@ void Clamp_S32_opaque_D32_nofilter_DX_shaderproc(const SkBitmapProcState& s, in
SkFractionalInt fx;
int dstY;
{
- SkPoint pt;
- s.fInvProc(s.fInvMatrix, SkIntToScalar(x) + SK_ScalarHalf, SkIntToScalar(y) + SK_ScalarHalf,
- &pt);
- fx = SkScalarToFractionalInt(pt.fY)
- + bitmap_sampler_inv_bias(s.fInvMatrix.getScaleY());
+ const SkBitmapProcStateAutoMapper mapper(s, x, y);
const unsigned maxY = s.fPixmap.height() - 1;
- dstY = SkClampMax(SkFractionalIntToInt(fx), maxY);
- fx = SkScalarToFractionalInt(pt.fX)
- + bitmap_sampler_inv_bias(s.fInvMatrix.getScaleX());
+ dstY = SkClampMax(SkFractionalIntToInt(mapper.y()), maxY);
+ fx = mapper.x();
}
const SkPMColor* SK_RESTRICT src = s.fPixmap.addr32(0, dstY);

Powered by Google App Engine
This is Rietveld 408576698