diff options
author | 2015-05-12 10:28:06 -0700 | |
---|---|---|
committer | 2015-05-12 10:28:06 -0700 | |
commit | 2629697933b5cc975e45d2a45c48f803fc6cbcec (patch) | |
tree | 53730ca8354552773d93adfe7ade5f1e2bc18192 /src/effects/SkPerlinNoiseShader.cpp | |
parent | 39a9a5069b25aa8b9529118cfd0ece5f412fb56b (diff) |
Revert of stop calling SkScalarDiv (patchset #4 id:60001 of https://codereview.chromium.org/1135053002/)
Reason for revert:
need to wait for Blink roll (and patch android)
Original issue's description:
> stop calling SkScalarDiv
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/67d71c898249a7af3523b16c6a69895a63bfae0a
TBR=
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1138263002
Diffstat (limited to 'src/effects/SkPerlinNoiseShader.cpp')
-rw-r--r-- | src/effects/SkPerlinNoiseShader.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/effects/SkPerlinNoiseShader.cpp b/src/effects/SkPerlinNoiseShader.cpp index c59bd8c120..7114703168 100644 --- a/src/effects/SkPerlinNoiseShader.cpp +++ b/src/effects/SkPerlinNoiseShader.cpp @@ -212,7 +212,8 @@ private: SkScalar highFrequencx = SkScalarCeilToScalar(tileWidth * fBaseFrequency.fX) / tileWidth; // BaseFrequency should be non-negative according to the standard. - if (fBaseFrequency.fX / lowFrequencx < highFrequencx / fBaseFrequency.fX) { + if (SkScalarDiv(fBaseFrequency.fX, lowFrequencx) < + SkScalarDiv(highFrequencx, fBaseFrequency.fX)) { fBaseFrequency.fX = lowFrequencx; } else { fBaseFrequency.fX = highFrequencx; @@ -223,7 +224,8 @@ private: SkScalarFloorToScalar(tileHeight * fBaseFrequency.fY) / tileHeight; SkScalar highFrequency = SkScalarCeilToScalar(tileHeight * fBaseFrequency.fY) / tileHeight; - if (fBaseFrequency.fY / lowFrequency < highFrequency / fBaseFrequency.fY) { + if (SkScalarDiv(fBaseFrequency.fY, lowFrequency) < + SkScalarDiv(highFrequency, fBaseFrequency.fY)) { fBaseFrequency.fY = lowFrequency; } else { fBaseFrequency.fY = highFrequency; @@ -382,9 +384,8 @@ SkScalar SkPerlinNoiseShader::PerlinNoiseShaderContext::calculateTurbulenceValue SkScalar ratio = SK_Scalar1; for (int octave = 0; octave < perlinNoiseShader.fNumOctaves; ++octave) { SkScalar noise = noise2D(channel, stitchData, noiseVector); - SkScalar numer = (perlinNoiseShader.fType == kFractalNoise_Type) ? - noise : SkScalarAbs(noise); - turbulenceFunctionResult += numer / ratio; + turbulenceFunctionResult += SkScalarDiv( + (perlinNoiseShader.fType == kFractalNoise_Type) ? noise : SkScalarAbs(noise), ratio); noiseVector.fX *= 2; noiseVector.fY *= 2; ratio *= 2; @@ -405,7 +406,8 @@ SkScalar SkPerlinNoiseShader::PerlinNoiseShaderContext::calculateTurbulenceValue } if (channel == 3) { // Scale alpha by paint value - turbulenceFunctionResult *= SkIntToScalar(getPaintAlpha()) / 255; + turbulenceFunctionResult = SkScalarMul(turbulenceFunctionResult, + SkScalarDiv(SkIntToScalar(getPaintAlpha()), SkIntToScalar(255))); } // Clamp result @@ -929,7 +931,7 @@ void GrGLPerlinNoise::setData(const GrGLProgramDataManager& pdman, const GrProce const SkVector& baseFrequency = turbulence.baseFrequency(); pdman.set2f(fBaseFrequencyUni, baseFrequency.fX, baseFrequency.fY); - pdman.set1f(fAlphaUni, SkIntToScalar(turbulence.alpha()) / 255); + pdman.set1f(fAlphaUni, SkScalarDiv(SkIntToScalar(turbulence.alpha()), SkIntToScalar(255))); if (turbulence.stitchTiles()) { const SkPerlinNoiseShader::StitchData& stitchData = turbulence.stitchData(); |