Search in sources :

Example 26 with ComposeShader

use of android.graphics.ComposeShader in project AndroidPicker by gzu-liyujiang.

the class ColorGradientView method buildShader.

private void buildShader() {
    if (brightnessGradient) {
        mShader = new LinearGradient(mGradientRect.left, mGradientRect.top, mGradientRect.right, mGradientRect.top, mSelectedColorGradient, null, Shader.TileMode.CLAMP);
    } else {
        LinearGradient gradientShader = new LinearGradient(mGradientRect.left, mGradientRect.top, mGradientRect.right, mGradientRect.top, GRAD_COLORS, null, Shader.TileMode.CLAMP);
        LinearGradient alphaShader = new LinearGradient(0, mGradientRect.top + (mGradientRect.height() / 3), 0, mGradientRect.bottom, GRAD_ALPHA, null, Shader.TileMode.CLAMP);
        mShader = new ComposeShader(alphaShader, gradientShader, PorterDuff.Mode.MULTIPLY);
    }
    mPaint.setShader(mShader);
}
Also used : LinearGradient(android.graphics.LinearGradient) ComposeShader(android.graphics.ComposeShader)

Example 27 with ComposeShader

use of android.graphics.ComposeShader in project little-bear-dictionary by daimajia.

the class ColorPickerView method drawSatValPanel.

private void drawSatValPanel(Canvas canvas) {
    final RectF rect = mSatValRect;
    if (BORDER_WIDTH_PX > 0) {
        mBorderPaint.setColor(mBorderColor);
        canvas.drawRect(mDrawingRect.left, mDrawingRect.top, rect.right + BORDER_WIDTH_PX, rect.bottom + BORDER_WIDTH_PX, mBorderPaint);
    }
    if (mValShader == null) {
        mValShader = new LinearGradient(rect.left, rect.top, rect.left, rect.bottom, 0xffffffff, 0xff000000, TileMode.CLAMP);
    }
    int rgb = Color.HSVToColor(new float[] { mHue, 1f, 1f });
    mSatShader = new LinearGradient(rect.left, rect.top, rect.right, rect.top, 0xffffffff, rgb, TileMode.CLAMP);
    ComposeShader mShader = new ComposeShader(mValShader, mSatShader, PorterDuff.Mode.MULTIPLY);
    mSatValPaint.setShader(mShader);
    canvas.drawRect(rect, mSatValPaint);
    Point p = satValToPoint(mSat, mVal);
    mSatValTrackerPaint.setColor(0xff000000);
    canvas.drawCircle(p.x, p.y, PALETTE_CIRCLE_TRACKER_RADIUS - 1f * mDensity, mSatValTrackerPaint);
    mSatValTrackerPaint.setColor(0xffdddddd);
    canvas.drawCircle(p.x, p.y, PALETTE_CIRCLE_TRACKER_RADIUS, mSatValTrackerPaint);
}
Also used : RectF(android.graphics.RectF) LinearGradient(android.graphics.LinearGradient) ComposeShader(android.graphics.ComposeShader) Point(android.graphics.Point) Point(android.graphics.Point) Paint(android.graphics.Paint)

Aggregations

ComposeShader (android.graphics.ComposeShader)27 LinearGradient (android.graphics.LinearGradient)21 Paint (android.graphics.Paint)20 RectF (android.graphics.RectF)17 Point (android.graphics.Point)16 RadialGradient (android.graphics.RadialGradient)5 Bitmap (android.graphics.Bitmap)4 SuppressLint (android.annotation.SuppressLint)3 Shader (android.graphics.Shader)3 SweepGradient (android.graphics.SweepGradient)3 BitmapShader (android.graphics.BitmapShader)2 Canvas (android.graphics.Canvas)2 Matrix (android.graphics.Matrix)2 Activity (android.app.Activity)1 ColorMatrixColorFilter (android.graphics.ColorMatrixColorFilter)1 Rect (android.graphics.Rect)1