diff options
Diffstat (limited to 'src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java')
-rw-r--r-- | src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java index f545cd986..76ae475ac 100644 --- a/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java +++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java @@ -22,7 +22,6 @@ public class ImageFilterSharpen extends ImageFilterRS { private static final String LOGTAG = "ImageFilterSharpen"; private ScriptC_convolve3x3 mScript; - float mScaleFactor; private FilterBasicRepresentation mParameters; @@ -63,19 +62,14 @@ public class ImageFilterSharpen extends ImageFilterRS { @Override protected void createFilter(android.content.res.Resources res, float scaleFactor, int quality) { - int w = getInPixelsAllocation().getType().getX(); - int h = getInPixelsAllocation().getType().getY(); - mScaleFactor = scaleFactor; - if (mScript == null) { mScript = new ScriptC_convolve3x3(getRenderScriptContext(), res, R.raw.convolve3x3); } - mScript.set_gWidth(w); - mScript.set_gHeight(h); } private void computeKernel() { - float p1 = mParameters.getValue() * mScaleFactor; + float scaleFactor = getEnvironment().getScaleFactor(); + float p1 = mParameters.getValue() * scaleFactor; float value = p1 / 100.0f; float f[] = new float[9]; float p = value; @@ -92,6 +86,14 @@ public class ImageFilterSharpen extends ImageFilterRS { } @Override + protected void bindScriptValues() { + int w = getInPixelsAllocation().getType().getX(); + int h = getInPixelsAllocation().getType().getY(); + mScript.set_gWidth(w); + mScript.set_gHeight(h); + } + + @Override protected void runFilter() { if (mParameters == null) { return; |