diff --git a/CHANGELOG.md b/CHANGELOG.md index ee3011b..e351d9b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ Change Log ========== +Version 1.1.0 *(2015-07-24)* +---------------------------- + +Adjustment of default parameters. + Version 1.0.8 *(2015-07-24)* ---------------------------- diff --git a/README.md b/README.md index 5621a0c..5c77265 100644 --- a/README.md +++ b/README.md @@ -32,9 +32,9 @@ repositories { } dependencies { - compile 'jp.wasabeef:glide-transformations:1.0.8' + compile 'jp.wasabeef:glide-transformations:1.1.0' // If you want to use the GPU Filters - compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.2.3' + compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.3.0' } ``` @@ -44,7 +44,7 @@ Set Glide Transform. ```java Glide.with(this).load(R.drawable.demo) - .bitmapTransform(new BlurTransformation(this, Glide.get(this).getBitmapPool())) + .bitmapTransform(new BlurTransformation(context)) .into((ImageView) findViewById(R.id.image)); ``` @@ -53,9 +53,8 @@ Glide.with(this).load(R.drawable.demo) You can set a multiple transformations. ```java -BitmapPool pool = Glide.get(this).getBitmapPool(); -Glide.with(this).load(R.drawable.demo).bitmapTransform( - new BlurTransformation(this, pool, 25, 2), new CropCircleTransformation(pool)) +Glide.with(this).load(R.drawable.demo) + .bitmapTransform(new BlurTransformation(context, 25, 2), new CropCircleTransformation(pool)) .into((ImageView) findViewById(R.id.image)); ``` @@ -68,7 +67,7 @@ android { ... defaultConfig { ... - renderscriptTargetApi 22 + renderscriptTargetApi 23 renderscriptSupportModeEnabled true } } diff --git a/build.gradle b/build.gradle index 0a0e8a3..e463586 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:1.3.0-beta4' + classpath 'com.android.tools.build:gradle:1.3.1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.2' // NOTE: Do not place your application dependencies here; they belong diff --git a/example/src/main/java/jp/wasabeef/example/glide/MainAdapter.java b/example/src/main/java/jp/wasabeef/example/glide/MainAdapter.java index aa4a3cc..5abad33 100644 --- a/example/src/main/java/jp/wasabeef/example/glide/MainAdapter.java +++ b/example/src/main/java/jp/wasabeef/example/glide/MainAdapter.java @@ -2,10 +2,8 @@ package jp.wasabeef.example.glide; import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; -import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import android.content.Context; -import android.graphics.Bitmap; import android.graphics.Color; import android.graphics.PointF; import android.support.v7.widget.RecyclerView; @@ -42,7 +40,6 @@ public class MainAdapter extends RecyclerView.Adapter { private Context mContext; private List mDataSet; - private BitmapPool mPool; enum Type { CropTop, @@ -69,7 +66,6 @@ public class MainAdapter extends RecyclerView.Adapter { public MainAdapter(Context context, List dataSet) { mContext = context; mDataSet = dataSet; - mPool = Glide.get(mContext).getBitmapPool(); } @Override @@ -85,63 +81,64 @@ public class MainAdapter extends RecyclerView.Adapter { switch (mDataSet.get(position)) { case CropTop: transformation = - new CropTransformation(mPool, 300, 100, CropTransformation.CropType.TOP); + new CropTransformation(mContext, 300, 100, CropTransformation.CropType.TOP); break; case CropCenter: - transformation = new CropTransformation(mPool, 300, 100); + transformation = new CropTransformation(mContext, 300, 100); break; case CropBottom: transformation = - new CropTransformation(mPool, 300, 100, CropTransformation.CropType.BOTTOM); + new CropTransformation(mContext, 300, 100, + CropTransformation.CropType.BOTTOM); break; case CropSquare: - transformation = new CropSquareTransformation(mPool); + transformation = new CropSquareTransformation(mContext); break; case CropCircle: - transformation = new CropCircleTransformation(mPool); + transformation = new CropCircleTransformation(mContext); break; case ColorFilter: - transformation = new ColorFilterTransformation(mPool, Color.argb(80, 255, 0, 0)); + transformation = new ColorFilterTransformation(mContext, Color.argb(80, 255, 0, 0)); break; case Grayscale: - transformation = new GrayscaleTransformation(mPool); + transformation = new GrayscaleTransformation(mContext); break; case RoundedCorners: - transformation = new RoundedCornersTransformation(mPool, 100, 0); + transformation = new RoundedCornersTransformation(mContext, 100, 0); break; case Blur: - transformation = new BlurTransformation(mContext, mPool, 25, 1); + transformation = new BlurTransformation(mContext, 25, 1); break; case Toon: - transformation = new ToonFilterTransformation(mContext, mPool); + transformation = new ToonFilterTransformation(mContext); break; case Sepia: - transformation = new SepiaFilterTransformation(mContext, mPool); + transformation = new SepiaFilterTransformation(mContext); break; case Contrast: - transformation = new ContrastFilterTransformation(mContext, mPool, 2.0f); + transformation = new ContrastFilterTransformation(mContext, 2.0f); break; case Invert: - transformation = new InvertFilterTransformation(mContext, mPool); + transformation = new InvertFilterTransformation(mContext); break; case Pixel: - transformation = new PixelationFilterTransformation(mContext, mPool, 20); + transformation = new PixelationFilterTransformation(mContext, 20); break; case Sketch: - transformation = new SketchFilterTransformation(mContext, mPool); + transformation = new SketchFilterTransformation(mContext); break; case Swirl: - transformation = new SwirlFilterTransformation(mContext, mPool, + transformation = new SwirlFilterTransformation(mContext, 0.5f, 1.0f, new PointF(0.5f, 0.5f)); break; case Brightness: - transformation = new BrightnessFilterTransformation(mContext, mPool, 0.5f); + transformation = new BrightnessFilterTransformation(mContext, 0.5f); break; case Kuawahara: - transformation = new KuwaharaFilterTransformation(mContext, mPool, 25); + transformation = new KuwaharaFilterTransformation(mContext, 25); break; case Vignette: - transformation = new VignetteFilterTransformation(mContext, mPool, + transformation = new VignetteFilterTransformation(mContext, new PointF(0.5f, 0.5f), new float[]{0.0f, 0.0f, 0.0f}, 0f, 0.75f); break; } diff --git a/gradle.properties b/gradle.properties index ca112d9..010e193 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,12 +1,12 @@ -VERSION_NAME=1.0.8 -VERSION_CODE=8 +VERSION_NAME=1.1.0 +VERSION_CODE=9 GROUP=jp.wasabeef ARTIFACT_ID=glide-transformations -COMPILE_SDK_VERSION=22 -BUILD_TOOLS_VERSION=22.0.1 -TARGET_SDK_VERSION=22 -RENDERSCRIPT_TARGET_API=22 +COMPILE_SDK_VERSION=23 +BUILD_TOOLS_VERSION=23.0.1 +TARGET_SDK_VERSION=23 +RENDERSCRIPT_TARGET_API=23 MIN_SDK_VERSION=11 POM_DESCRIPTION=which provides simple Tranformations to Glide @@ -23,6 +23,6 @@ POM_DEVELOPER_EMAIL=dadadada.chop@gmail.com POM_DEVELOPER_URL=wasabeef.jp ISSUE_URL=https://github.com/wasabeef/glide-transformations/issues -SUPPORT_PACKAGE_VERSION=22.2.1 +SUPPORT_PACKAGE_VERSION=23.0.1 GLIDE_VERSION=3.6.1 -GPUIMAGE_VERSION=1.2.3 \ No newline at end of file +GPUIMAGE_VERSION=1.3.0 \ No newline at end of file diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/BlurTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/BlurTransformation.java index ed6c765..14d1f2f 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/BlurTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/BlurTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -41,6 +42,10 @@ public class BlurTransformation implements Transformation { private int mRadius; private int mSampling; + public BlurTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool(), MAX_RADIUS, DEFAULT_DOWN_SAMPLING); + } + public BlurTransformation(Context context, BitmapPool pool) { this(context, pool, MAX_RADIUS, DEFAULT_DOWN_SAMPLING); } @@ -49,6 +54,10 @@ public class BlurTransformation implements Transformation { this(context, pool, radius, DEFAULT_DOWN_SAMPLING); } + public BlurTransformation(Context context, int radius) { + this(context, Glide.get(context).getBitmapPool(), radius, DEFAULT_DOWN_SAMPLING); + } + public BlurTransformation(Context context, BitmapPool pool, int radius, int sampling) { mContext = context; mBitmapPool = pool; @@ -56,6 +65,13 @@ public class BlurTransformation implements Transformation { mSampling = sampling; } + public BlurTransformation(Context context, int radius, int sampling) { + mContext = context; + mBitmapPool = Glide.get(context).getBitmapPool(); + mRadius = radius; + mSampling = sampling; + } + @Override public Resource transform(Resource resource, int outWidth, int outHeight) { Bitmap source = resource.get(); diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/ColorFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/ColorFilterTransformation.java index f82936c..de903fa 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/ColorFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/ColorFilterTransformation.java @@ -16,11 +16,13 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Paint; @@ -33,6 +35,10 @@ public class ColorFilterTransformation implements Transformation { private int mColor; + public ColorFilterTransformation(Context context, int color) { + this(Glide.get(context).getBitmapPool(), color); + } + public ColorFilterTransformation(BitmapPool pool, int color) { mBitmapPool = pool; mColor = color; diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropCircleTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropCircleTransformation.java index 5e1f535..2bfd99d 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropCircleTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropCircleTransformation.java @@ -16,11 +16,13 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapShader; import android.graphics.Canvas; @@ -31,6 +33,10 @@ public class CropCircleTransformation implements Transformation { private BitmapPool mBitmapPool; + public CropCircleTransformation(Context context) { + this(Glide.get(context).getBitmapPool()); + } + public CropCircleTransformation(BitmapPool pool) { this.mBitmapPool = pool; } diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropSquareTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropSquareTransformation.java index 21a682b..cecd0d9 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropSquareTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropSquareTransformation.java @@ -16,11 +16,13 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; public class CropSquareTransformation implements Transformation { @@ -29,6 +31,10 @@ public class CropSquareTransformation implements Transformation { private int mWidth; private int mHeight; + public CropSquareTransformation(Context context) { + this(Glide.get(context).getBitmapPool()); + } + public CropSquareTransformation(BitmapPool pool) { this.mBitmapPool = pool; } diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropTransformation.java index aed4de8..797813a 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/CropTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/CropTransformation.java @@ -16,31 +16,49 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.RectF; public class CropTransformation implements Transformation { + public enum CropType { + TOP, + CENTER, + BOTTOM + } + private BitmapPool mBitmapPool; private int mWidth; private int mHeight; private CropType mCropType = CropType.CENTER; + public CropTransformation(Context context) { + this(Glide.get(context).getBitmapPool()); + } + public CropTransformation(BitmapPool pool) { - mBitmapPool = pool; + this(pool, 0, 0); + } + + public CropTransformation(Context context, int width, int height) { + this(Glide.get(context).getBitmapPool(), width, height); } public CropTransformation(BitmapPool pool, int width, int height) { - mBitmapPool = pool; - mWidth = width; - mHeight = height; + this(pool, width, height, CropType.CENTER); + } + + public CropTransformation(Context context, int width, int height, CropType cropType) { + this(Glide.get(context).getBitmapPool(), width, height, cropType); } public CropTransformation(BitmapPool pool, int width, int height, CropType cropType) { @@ -97,10 +115,4 @@ public class CropTransformation implements Transformation { return 0; } } - - public enum CropType { - TOP, - CENTER, - BOTTOM - } } diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/GrayscaleTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/GrayscaleTransformation.java index f2edd64..5893f3c 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/GrayscaleTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/GrayscaleTransformation.java @@ -16,11 +16,13 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.ColorMatrix; @@ -31,6 +33,10 @@ public class GrayscaleTransformation implements Transformation { private BitmapPool mBitmapPool; + public GrayscaleTransformation(Context context) { + this(Glide.get(context).getBitmapPool()); + } + public GrayscaleTransformation(BitmapPool pool) { mBitmapPool = pool; } diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/RoundedCornersTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/RoundedCornersTransformation.java index d345af9..ae637af 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/RoundedCornersTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/RoundedCornersTransformation.java @@ -16,11 +16,13 @@ package jp.wasabeef.glide.transformations; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.load.resource.bitmap.BitmapResource; +import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapShader; import android.graphics.Canvas; @@ -35,10 +37,14 @@ public class RoundedCornersTransformation implements Transformation { private int radius; private int margin; + public RoundedCornersTransformation(Context context, int radius, int margin) { + this(Glide.get(context).getBitmapPool(), radius, margin); + } + public RoundedCornersTransformation(BitmapPool pool, int radius, int margin) { + mBitmapPool = pool; this.radius = radius; this.margin = margin; - mBitmapPool = pool; } @Override diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/BrightnessFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/BrightnessFilterTransformation.java index b55de1b..160dd99 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/BrightnessFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/BrightnessFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -38,9 +39,16 @@ public class BrightnessFilterTransformation implements Transformation { private GPUImageBrightnessFilter mFilter = new GPUImageBrightnessFilter(); private float mBrightness; + public BrightnessFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public BrightnessFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, 0.0f); + } + + public BrightnessFilterTransformation(Context context, float brightness) { + this(context, Glide.get(context).getBitmapPool(), brightness); } public BrightnessFilterTransformation(Context context, BitmapPool pool, float brightness) { diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ContrastFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ContrastFilterTransformation.java index 94dad50..0350aca 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ContrastFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ContrastFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -38,9 +39,16 @@ public class ContrastFilterTransformation implements Transformation { private GPUImageContrastFilter mFilter = new GPUImageContrastFilter(); private float mContrast; + public ContrastFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public ContrastFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, 1.0f); + } + + public ContrastFilterTransformation(Context context, float contrast) { + this(context, Glide.get(context).getBitmapPool(), contrast); } public ContrastFilterTransformation(Context context, BitmapPool pool, float contrast) { diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/InvertFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/InvertFilterTransformation.java index cefdef9..3f1787e 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/InvertFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/InvertFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -27,11 +28,18 @@ import android.graphics.Bitmap; import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImageColorInvertFilter; +/** + * Invert all the colors in the image. + */ public class InvertFilterTransformation implements Transformation { private Context mContext; private BitmapPool mBitmapPool; + public InvertFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public InvertFilterTransformation(Context context, BitmapPool pool) { mContext = context; mBitmapPool = pool; diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/KuwaharaFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/KuwaharaFilterTransformation.java index 656b426..0e23947 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/KuwaharaFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/KuwaharaFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -28,7 +29,14 @@ import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImageKuwaharaFilter; /** - * The radius to sample from when creating the brush-stroke effect, with a default of 3. + * Kuwahara image abstraction, drawn from the work of Kyprianidis, et. al. in their publication + * "Anisotropic Kuwahara Filtering on the GPU" within the GPU Pro collection. This produces an + * oil-painting-like + * image, but it is extremely computationally expensive, so it can take seconds to render a frame on + * an iPad 2. + * This might be best used for still images. + * + * The radius to sample from when creating the brush-stroke effect, with a default of 25. * The larger the radius, the slower the filter. */ public class KuwaharaFilterTransformation implements Transformation { @@ -39,9 +47,16 @@ public class KuwaharaFilterTransformation implements Transformation { private GPUImageKuwaharaFilter mFilter = new GPUImageKuwaharaFilter(); private int mRadius; + public KuwaharaFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public KuwaharaFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, 25); + } + + public KuwaharaFilterTransformation(Context context, int radius) { + this(context, Glide.get(context).getBitmapPool(), radius); } public KuwaharaFilterTransformation(Context context, BitmapPool pool, int radius) { diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/PixelationFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/PixelationFilterTransformation.java index 7585f5b..72d61d5 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/PixelationFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/PixelationFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -27,6 +28,11 @@ import android.graphics.Bitmap; import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImagePixelationFilter; +/** + * Applies a Pixelation effect to the image. + * + * The pixel with a default of 10.0. + */ public class PixelationFilterTransformation implements Transformation { private Context mContext; @@ -35,9 +41,16 @@ public class PixelationFilterTransformation implements Transformation { private GPUImagePixelationFilter mFilter = new GPUImagePixelationFilter(); private float mPixel; + public PixelationFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public PixelationFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, 10f); + } + + public PixelationFilterTransformation(Context context, float pixel) { + this(context, Glide.get(context).getBitmapPool(), pixel); } public PixelationFilterTransformation(Context context, BitmapPool pool, float pixel) { diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SepiaFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SepiaFilterTransformation.java index e2e057f..13d581e 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SepiaFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SepiaFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -27,6 +28,11 @@ import android.graphics.Bitmap; import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImageSepiaFilter; +/** + * Applies a simple sepia effect. + * + * The intensity with a default of 1.0. + */ public class SepiaFilterTransformation implements Transformation { private Context mContext; @@ -35,9 +41,16 @@ public class SepiaFilterTransformation implements Transformation { private GPUImageSepiaFilter mFilter = new GPUImageSepiaFilter(); private float mIntensity; + public SepiaFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public SepiaFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, 1.0f); + } + + public SepiaFilterTransformation(Context context, float intensity) { + this(context, Glide.get(context).getBitmapPool(), intensity); } public SepiaFilterTransformation(Context context, BitmapPool pool, float intensity) { diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SketchFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SketchFilterTransformation.java index 1ccdbbb..b35daad 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SketchFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SketchFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -32,6 +33,10 @@ public class SketchFilterTransformation implements Transformation { private Context mContext; private BitmapPool mBitmapPool; + public SketchFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public SketchFilterTransformation(Context context, BitmapPool pool) { mContext = context; mBitmapPool = pool; diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SwirlFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SwirlFilterTransformation.java index bc25794..88ad9a1 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SwirlFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/SwirlFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -28,6 +29,9 @@ import android.graphics.PointF; import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImageSwirlFilter; +/** + * Creates a swirl distortion on the image. + */ public class SwirlFilterTransformation implements Transformation { private Context mContext; @@ -38,10 +42,17 @@ public class SwirlFilterTransformation implements Transformation { private float mAngle; private PointF mCenter; + public SwirlFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public SwirlFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; - mCenter = new PointF(); + this(context, pool, .5f, 1.0f, new PointF(0.5f, 0.5f)); + } + + public SwirlFilterTransformation(Context context, + float radius, float angle, PointF center) { + this(context, Glide.get(context).getBitmapPool(), radius, angle, center); } /** diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ToonFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ToonFilterTransformation.java index f9edc07..dc42e8b 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ToonFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/ToonFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -27,6 +28,11 @@ import android.graphics.Bitmap; import jp.co.cyberagent.android.gpuimage.GPUImage; import jp.co.cyberagent.android.gpuimage.GPUImageToonFilter; +/** + * The threshold at which to apply the edges, default of 0.2. + * The levels of quantization for the posterization of colors within the scene, + * with a default of 10.0. + */ public class ToonFilterTransformation implements Transformation { private Context mContext; @@ -36,9 +42,16 @@ public class ToonFilterTransformation implements Transformation { private float mThreshold; private float mQuantizationLevels; + public ToonFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } + public ToonFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; + this(context, pool, .2f, 10.0f); + } + + public ToonFilterTransformation(Context context, float threshold, float quantizationLevels) { + this(context, Glide.get(context).getBitmapPool(), threshold, quantizationLevels); } public ToonFilterTransformation(Context context, BitmapPool pool, diff --git a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/VignetteFilterTransformation.java b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/VignetteFilterTransformation.java index 1a216a4..5c4e5a2 100644 --- a/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/VignetteFilterTransformation.java +++ b/transformations/src/main/java/jp/wasabeef/glide/transformations/gpu/VignetteFilterTransformation.java @@ -16,6 +16,7 @@ package jp.wasabeef.glide.transformations.gpu; * limitations under the License. */ +import com.bumptech.glide.Glide; import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; @@ -32,8 +33,8 @@ import jp.co.cyberagent.android.gpuimage.GPUImageVignetteFilter; /** * Performs a vignetting effect, fading out the image at the edges - * x: - * y: The directional intensity of the vignetting, with a default of x = 0.75, y = 0.5 + * The directional intensity of the vignetting, + * with a default of x = 0.5, y = 0.5, start = 0, end = 0.75 */ public class VignetteFilterTransformation implements Transformation { @@ -46,11 +47,17 @@ public class VignetteFilterTransformation implements Transformation { private float mVignetteStart; private float mVignetteEnd; + public VignetteFilterTransformation(Context context) { + this(context, Glide.get(context).getBitmapPool()); + } public VignetteFilterTransformation(Context context, BitmapPool pool) { - mContext = context; - mBitmapPool = pool; - mCenter = new PointF(); + this(context, pool, new PointF(0.5f, 0.5f), new float[]{0.0f, 0.0f, 0.0f}, 0.0f, 0.75f); + } + + public VignetteFilterTransformation(Context context, + PointF center, float[] color, float start, float end) { + this(context, Glide.get(context).getBitmapPool(), center, color, start, end); } public VignetteFilterTransformation(Context context, BitmapPool pool,