ImageFilterHue.java revision bf93da72576b28f4e9dfb27f8f3fef702c8ae82d
1
2package com.android.gallery3d.filtershow.filters;
3
4import android.graphics.Bitmap;
5
6public class ImageFilterHue extends ImageFilter {
7    private ColorSpaceMatrix cmatrix = null;
8
9    public ImageFilterHue() {
10        mName = "Hue";
11        cmatrix = new ColorSpaceMatrix();
12    }
13
14    @Override
15    public ImageFilter clone() throws CloneNotSupportedException {
16        ImageFilterHue filter = (ImageFilterHue) super.clone();
17        filter.cmatrix = new ColorSpaceMatrix(cmatrix);
18        return filter;
19    }
20
21    native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float []matrix);
22
23    public void apply(Bitmap bitmap) {
24        int w = bitmap.getWidth();
25        int h = bitmap.getHeight();
26        float p = mParameter;
27        float value = p;
28        cmatrix.identity();
29        cmatrix.setHue(value);
30
31        nativeApplyFilter(bitmap, w, h, cmatrix.getMatrix());
32    }
33}
34