微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android.graphics.RadialGradient的实例源码

项目:LaunchEnr    文件FolderIcon.java   
public void setup(displayMetrics dm,DeviceProfile grid,View invalidateDelegate,int availableSpace,int topPadding) {
    mInvalidateDelegate = invalidateDelegate;

    final int previewSize = grid.folderIconSizePx;
    final int previewPadding = grid.folderIconPreviewPadding;

    this.previewSize = (previewSize - 2 * previewPadding);

    basePreviewOffsetX = (availableSpace - this.previewSize) / 2;
    basePreviewOffsetY = previewPadding + grid.folderBackgroundOffset + topPadding;

    // stroke width is 1dp
    mstrokeWidth = dm.density;

    float radius = getScaledRadius();
    float shadowRadius = radius + mstrokeWidth;
    int shadowColor = Color.argb(SHADOW_OPACITY,0);
    mShadowShader = new RadialGradient(0,1,new int[] {shadowColor,Color.TRANSPARENT},new float[] {radius / shadowRadius,1},Shader.TileMode.CLAMP);

    invalidate();
}
项目:CodeScaner    文件ViewfinderView.java   
private void drawScanLine(Canvas canvas,Rect frame) {
    Shader shader = new RadialGradient(
            (float)(frame.left + frame.width() / 2),(float)(scannerStart + SCANNER_LINE_HEIGHT / 2),360f,laserColor,shadeColor(laserColor),Shader.TileMode.MIRROR);
    paint.setAlpha(CURRENT_POINT_OPACITY);
    paint.setShader(shader);
    if (scannerStart <= scannerEnd) {
        canvas.drawRect(frame.left,scannerStart,frame.right,scannerStart + SCANNER_LINE_HEIGHT,paint);
        scannerStart += SCANNER_LINE_MOVE_disTANCE;
    } else {
        scannerStart = frame.top;
    }
    paint.setShader(null);
}
项目:airgram    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,int height) {

        Bitmap bitmap = Bitmap.createBitmap(width,height,Config.ARGB_8888);

        int colorCount = 12;
        int colorAngleStep = 360 / 12;
        int colors[] = new int[colorCount + 1];
        float hsv[] = new float[] { 0f,1f,1f };
        for (int i = 0; i < colors.length; i++) {
            hsv[0] = (i * colorAngleStep + 180) % 360;
            colors[i] = Color.HSVToColor(hsv);
        }
        colors[colorCount] = colors[0];

        SweepGradient sweepGradient = new SweepGradient(width / 2,height / 2,colors,null);
        RadialGradient radialGradient = new RadialGradient(width / 2,colorWheelRadius,0xFFFFFFFF,0x00FFFFFF,TileMode.CLAMP);
        ComposeShader composeShader = new ComposeShader(sweepGradient,radialGradient,PorterDuff.Mode.SRC_OVER);

        colorWheelPaint.setShader(composeShader);

        Canvas canvas = new Canvas(bitmap);
        canvas.drawCircle(width / 2,colorWheelPaint);

        return bitmap;

    }
项目:airgram    文件multicolorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:planetcon    文件ColorPicker.java   
private Bitmap createColordiscBitmap(int radius) {
    int centerColor,edgeColor;
    Bitmap bitmap = Bitmap.createBitmap(2 * radius,2 * radius,Config.ARGB_8888);

    Canvas canvas = new Canvas(bitmap);
    mHSV[0] = 0; mHSV[1] = 1; mHSV[2] = 1;   //red
    SweepGradient sweepGradient = new SweepGradient(radius,radius,getColors(mHSV),null);
    mColorPaint.setShader(sweepGradient);
    canvas.drawCircle(radius,mColorPaint);

    mHSV[0] = 0; mHSV[1] = 0; mHSV[2] = 1;   //white
    centerColor = Color.HSVToColor(255,mHSV);
    edgeColor = Color.HSVToColor(0,mHSV);
    RadialGradient radialGradient = new RadialGradient(radius,centerColor,edgeColor,TileMode.CLAMP);
    mColorPaint.setShader(radialGradient);
    canvas.drawCircle(radius,mColorPaint);

    return bitmap;
}
项目:AndroidButtonLib    文件SlideButton.java   
private void startLightAnimation() {

        if (mLightAnimation == null) {

            mLightAnimation = ObjectAnimator.ofFloat(10,getMeasuredWidth());
            mLightAnimation.setRepeatCount(ValueAnimator.INFINITE);
            mLightAnimation.setDuration(3000);
            mLightAnimation.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                @Override
                public void onAnimationUpdate(ValueAnimator animation) {
                    float lightMove = (float) animation.getAnimatedValue();
                    if (Math.abs(lightMove) < getMeasuredWidth()) {
                        mShader = new RadialGradient(lightMove,getMeasuredHeight() / 2,90f,new int[]{Color.WHITE,mBackgroudColor},null,Shader.TileMode.CLAMP);
                        postInvalidate();
                    }

                }
            });
        }

        if (mLightAnimation != null && !mLightAnimation.isRunning()) {
            mLightAnimation.start();
        }

    }
项目:buildAPKsApps    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:buildAPKsApps    文件multicolorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:buildAPKsSamples    文件BouncingBalls.java   
private ShapeHolder addBall(float x,float y) {
    ovalShape circle = new ovalShape();
    circle.resize(50f,50f);
    ShapeDrawable drawable = new ShapeDrawable(circle);
    ShapeHolder shapeHolder = new ShapeHolder(drawable);
    shapeHolder.setX(x - 25f);
    shapeHolder.setY(y - 25f);
    int red = (int)(Math.random() * 255);
    int green = (int)(Math.random() * 255);
    int blue = (int)(Math.random() * 255);
    int color = 0xff000000 | red << 16 | green << 8 | blue;
    Paint paint = drawable.getPaint(); //new Paint(Paint.ANTI_ALIAS_FLAG);
    int darkColor = 0xff000000 | red/4 << 16 | green/4 << 8 | blue/4;
    RadialGradient gradient = new RadialGradient(37.5f,12.5f,50f,color,darkColor,Shader.TileMode.CLAMP);
    paint.setShader(gradient);
    shapeHolder.setPaint(paint);
    balls.add(shapeHolder);
    return shapeHolder;
}
项目:iosched-reader    文件SVGParser.java   
private void finishGradients() {
    for(Gradient gradient : gradientMap.values()) {
        if (gradient.xlink != null) {
            Gradient parent = gradientMap.get(gradient.xlink);
            if (parent != null) {
                gradient.inherit(parent);
            }
        }
        int[] colors = new int[gradient.colors.size()];
        for (int i = 0; i < colors.length; i++) {
            colors[i] = gradient.colors.get(i);
        }
        float[] positions = new float[gradient.positions.size()];
        for (int i = 0; i < positions.length; i++) {
            positions[i] = gradient.positions.get(i);
        }
        if (colors.length == 0) {
            Log.d("BAD","BAD gradient,id="+gradient.id);
        }
        if (gradient.isLinear) {
            gradient.shader= new LinearGradient(gradient.x1,gradient.y1,gradient.x2,gradient.y2,positions,gradient.tilemode);
        } else {
            gradient.shader= new RadialGradient(gradient.x,gradient.y,gradient.radius,gradient.tilemode);
        }
    }
}
项目:Review-    文件RangeSliderViewEx.java   
@AnimateMethod
public void seTradius(final float radius) {
    rippleRadius = radius;
    if (rippleRadius > 0) {
        RadialGradient radialGradient = new RadialGradient(
                downX,downY,rippleRadius * 3,Color.TRANSPARENT,Color.BLACK,Shader.TileMode.MIRROR
        );
        ripplePaint.setShader(radialGradient);
    }
    invalidate();
}
项目:ClassifyView    文件BagDrawable.java   
@Override
    public void draw(Canvas canvas) {
        if (keepShow||inMerge) {
        canvas.save();
        canvas.clipRect(getBounds());
        mRectF.set(getBounds());

        mRectF.inset(mOutlinePadding,mOutlinePadding);
        if (mOutlinewidth > 0) {
            mOutlinePaint.setstrokeWidth(mOutlinewidth);
            mRectF.inset(mOutlinewidth,mOutlinewidth);
            mOutlinePaint.setColor(mOutLineColor);
            canvas.drawRoundRect(mRectF,mRadius,mOutlinePaint);
        }
//            mPaint.setShader(new SweepGradient(mRectF.centerX(),mRectF.centerY(),mColors,mPositions));
        mPaint.setShader(new RadialGradient(mRectF.centerX(),mRectF.width(),mCenterColor,mEdgeColor,Shader.TileMode.CLAMP));
        canvas.drawRoundRect(mRectF,mPaint);
        canvas.restore();
        }
    }
项目:BLE-Indoor-Positioning    文件BeaconMap.java   
protected void drawBeaconBackground(Canvas canvas,Beacon beacon,PointF beaconCenter) {
    float advertisingRadius = (float) canvasProjection.getCanvasUnitsFromMeters(beacon.getEstimatedAdvertisingRange());

    Paint innerBeaconRangePaint = new Paint(beaconRangePaint);
    innerBeaconRangePaint.setAlpha(100);
    Shader rangeShader = new RadialGradient(
            beaconCenter.x,beaconCenter.y,advertisingRadius - (pixelsPerDip * 0),primaryFillPaint.getColor(),beaconRangePaint.getColor(),Shader.TileMode.MIRROR);

    innerBeaconRangePaint.setShader(rangeShader);
    //canvas.drawCircle(beaconCenter.x,advertisingRadius,innerBeaconRangePaint);
    canvas.drawCircle(beaconCenter.x,beaconRangePaint);
}
项目:boohee_v5.6    文件RoundRectDrawableWithShadow.java   
private void buildShadowCorners() {
    RectF innerBounds = new RectF(-this.mCornerRadius,-this.mCornerRadius,this.mCornerRadius,this.mCornerRadius);
    RectF outerBounds = new RectF(innerBounds);
    outerBounds.inset(-this.mShadowSize,-this.mShadowSize);
    if (this.mCornerShadowPath == null) {
        this.mCornerShadowPath = new Path();
    } else {
        this.mCornerShadowPath.reset();
    }
    this.mCornerShadowPath.setFillType(FillType.EVEN_ODD);
    this.mCornerShadowPath.moveto(-this.mCornerRadius,0.0f);
    this.mCornerShadowPath.rLineto(-this.mShadowSize,0.0f);
    this.mCornerShadowPath.arcTo(outerBounds,180.0f,90.0f,false);
    this.mCornerShadowPath.arcTo(innerBounds,270.0f,-90.0f,false);
    this.mCornerShadowPath.close();
    float startRatio = this.mCornerRadius / (this.mCornerRadius + this.mShadowSize);
    this.mCornerShadowPaint.setShader(new RadialGradient(0.0f,0.0f,this.mCornerRadius + this.mShadowSize,new int[]{this.mShadowStartColor,this.mShadowStartColor,this.mShadowEndColor},new float[]{0.0f,startRatio,1.0f},TileMode.CLAMP));
    this.mEdgeShadowPaint.setShader(new LinearGradient(0.0f,(-this.mCornerRadius) + this.mShadowSize,(-this.mCornerRadius) - this.mShadowSize,0.5f,TileMode.CLAMP));
    this.mEdgeShadowPaint.setAntiAlias(false);
}
项目:boohee_v5.6    文件ShadowDrawableWrapper.java   
private void buildShadowCorners() {
    RectF innerBounds = new RectF(-this.mCornerRadius,false);
    this.mCornerShadowPath.close();
    float shadowRadius = -outerBounds.top;
    if (shadowRadius > 0.0f) {
        float startRatio = this.mCornerRadius / shadowRadius;
        float midratio = startRatio + ((1.0f - startRatio) / 2.0f);
        this.mCornerShadowPaint.setShader(new RadialGradient(0.0f,shadowRadius,new int[]{0,this.mShadowMiddleColor,midratio,TileMode.CLAMP));
    }
    this.mEdgeShadowPaint.setShader(new LinearGradient(0.0f,innerBounds.top,outerBounds.top,SHADOW_HORIZ_SCALE,TileMode.CLAMP));
    this.mEdgeShadowPaint.setAntiAlias(false);
}
项目:ZxingScan    文件ViewfinderView.java   
/**
 * 绘制移动扫描线
 * @param canvas
 * @param frame
 */
private void drawLaserScanner(Canvas canvas,Rect frame) {
     linePaint.setColor(laserColor);
     radialGradient = new RadialGradient(
            (float)(frame.left + frame.width() / 2),Shader.TileMode.MIRROR);
    linePaint.setShader(radialGradient);
    if(scannerStart < scannerEnd) {
        rectF.set(frame.left + 2 * SCANNER_LINE_HEIGHT,frame.right - 2 * SCANNER_LINE_HEIGHT,scannerStart + SCANNER_LINE_HEIGHT);
        canvas.drawoval(rectF,linePaint);
        scannerStart += SCANNER_LINE_MOVE_disTANCE;
    } else {
        scannerStart = frame.top;
    }
    linePaint.setShader(null);
    radialGradient=null;
}
项目:controllerformote-android    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:BlendedBackground    文件Gradient.java   
private ShapeDrawable.ShaderFactory createShaderFactory() {
    return new ShapeDrawable.ShaderFactory() {
        @Override
        public Shader resize(int width,int height) {
            switch (type) {
                case RADIAL:
                    return new RadialGradient(parentWidth / 2,parentHeight / 2,getParenTradius(),upper,lower,Shader.TileMode.CLAMP);

                case LINEAR:
                default:
                    return new LinearGradient(0,parentHeight,Shader.TileMode.CLAMP);
            }
        }
    };
}
项目:px-android    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,Config.ARGB_8888);

        int colorCount = 12;
        int colorAngleStep = 360 / 12;
        int colors[] = new int[colorCount + 1];
        float hsv[] = new float[]{0f,1f};
        for (int i = 0; i < colors.length; i++) {
            hsv[0] = (i * colorAngleStep + 180) % 360;
            colors[i] = Color.HSVToColor(hsv);
        }
        colors[colorCount] = colors[0];

        SweepGradient sweepGradient = new SweepGradient(width / 2,colorWheelPaint);

        return bitmap;

    }
项目:smconf-android    文件SVGParser.java   
private void finishGradients() {
    for(Gradient gradient : gradientMap.values()) {
        if (gradient.xlink != null) {
            Gradient parent = gradientMap.get(gradient.xlink);
            if (parent != null) {
                gradient.inherit(parent);
            }
        }
        int[] colors = new int[gradient.colors.size()];
        for (int i = 0; i < colors.length; i++) {
            colors[i] = gradient.colors.get(i);
        }
        float[] positions = new float[gradient.positions.size()];
        for (int i = 0; i < positions.length; i++) {
            positions[i] = gradient.positions.get(i);
        }
        if (colors.length == 0) {
            Log.d("BAD",gradient.tilemode);
        }
    }
}
项目:BLE_ToolBox_Android    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:BB8    文件JoystickPuck.java   
@Override
public void draw(Canvas canvas) {

    RadialGradient gradient = new RadialGradient(
            this.position.x,this.position.y,this.radius,this.color_0,this.color_1,Shader.TileMode.MIRROR
    );

    this.paint.setShader(gradient);

    canvas.drawCircle(this.position.x,this.paint);
}
项目:WebCards    文件dismissAreaView.java   
@Override
protected void onSizeChanged(int w,int h,int oldw,int oldh) {
    backgroundPaint.setShader(new RadialGradient(w,h,Shader.TileMode.MIRROR));

    indicatorRect =  new Rect(
            w - indicatorSize - indicatorMargin,h - indicatorSize - indicatorMargin,w - indicatorMargin,h - indicatorMargin);

    final int centerX = w - indicatorMargin - (indicatorSize / 2);
    final int centerY = h - indicatorMargin - (indicatorSize / 2);

    final int left = centerX - (crossSize / 2);
    final int top = centerY - (crossSize / 2);
    final int right = centerX + (crossSize / 2);
    final int bottom = centerY + (crossSize / 2);

    crossLines = new float[] {
            left,top,right,bottom,left,bottom
    };
}
项目:FingerColoring-Android    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:UofT-TiMetable    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:2015-Google-I-O-app    文件SVGParser.java   
private void finishGradients() {
    for(Gradient gradient : gradientMap.values()) {
        if (gradient.xlink != null) {
            Gradient parent = gradientMap.get(gradient.xlink);
            if (parent != null) {
                gradient.inherit(parent);
            }
        }
        int[] colors = new int[gradient.colors.size()];
        for (int i = 0; i < colors.length; i++) {
            colors[i] = gradient.colors.get(i);
        }
        float[] positions = new float[gradient.positions.size()];
        for (int i = 0; i < positions.length; i++) {
            positions[i] = gradient.positions.get(i);
        }
        if (colors.length == 0) {
            Log.d("BAD",gradient.tilemode);
        }
    }
}
项目:iOffice    文件RadialGradientShader.java   
public Shader createShader(IControl control,int viewIndex,Rect rect)
  {
int[] coordinate = getCircleCoordinate();
if(positionType == Center_Center && getFocus() == 0)
{
    int size = colors.length;
    int nTem = 0;
    for(int i = 0; i < size / 2; i++)
    {
        nTem = colors[i];
        colors[i] = colors[size - 1 - i];
        colors[size - 1 - i] = nTem;
    }
}
    shader = new RadialGradient(coordinate[0],coordinate[1],coordinate[2],Shader.TileMode.REPEAT);
    return shader;
  }
项目:FlyoutMenus    文件FlyoutMenuView.java   
Bitmap createButtonShadowBitmap() {
    int shadowRadius = (int) buttonElevation * 2;
    int bitmapRadius = buttonRadius + (shadowRadius / 2);
    int bitmapSize = bitmapRadius * 2;
    Bitmap shadowBitmap = Bitmap.createBitmap(bitmapSize,bitmapSize,Bitmap.Config.ARGB_8888);
    shadowBitmap.eraseColor(0x0);

    int colors[] = {
            ColorUtils.setAlphaComponent(SHADOW_COLOR,SHADOW_ALPHA),ColorUtils.setAlphaComponent(SHADOW_COLOR,0)
    };

    float stops[] = {
            (float) (buttonRadius - (shadowRadius / 2)) / (float) bitmapRadius,1f
    };

    Paint paint = new Paint();
    paint.setAntiAlias(true);
    paint.setShader(new RadialGradient(bitmapRadius,bitmapRadius,stops,Shader.TileMode.CLAMP));

    Canvas canvas = new Canvas(shadowBitmap);
    canvas.drawRect(0,paint);

    return shadowBitmap;
}
项目:FlyoutMenus    文件FlyoutMenuView.java   
Bitmap createMenuShadowBitmap() {
    menuShadowRadius = (int) flyoutMenuView.menuElevation * 2;
    menuShadowInset = menuShadowRadius / 2;
    int size = 2 * menuShadowRadius + 1;
    Bitmap shadowBitmap = Bitmap.createBitmap(size,size,Bitmap.Config.ARGB_8888);
    shadowBitmap.eraseColor(0x0); // clear

    Paint paint = new Paint();
    paint.setAntiAlias(true);
    paint.setShader(new RadialGradient(
            menuShadowRadius + 1,menuShadowRadius + 1,menuShadowRadius,0),paint);

    return shadowBitmap;
}
项目:AyoSunny    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:AndroidReview    文件RangeSliderViewEx.java   
@AnimateMethod
public void seTradius(final float radius) {
    rippleRadius = radius;
    if (rippleRadius > 0) {
        RadialGradient radialGradient = new RadialGradient(
                downX,Shader.TileMode.MIRROR
        );
        ripplePaint.setShader(radialGradient);
    }
    invalidate();
}
项目:EspLight-APP    文件ColorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:Domo-Android    文件multicolorPicker.java   
private Bitmap createColorWheelBitmap(int width,colorWheelPaint);

        return bitmap;

    }
项目:minimalist-flashlight    文件OldIconDrawable.java   
public void updateSize(int size) {
  mSize = size > 0 ? size : 100;
  createPath(size);

  mRadius = mSize * (0.8f / 2f);
  mShadowRadius = mSize * (0.95f / 2);

  float startRatio = mRadius / mShadowRadius;
  float midratio = startRatio + ((1f - startRatio) / 2f);

  mShadow = new RadialGradient(mSize / 2,mSize / 2,mShadowRadius,0x44000000,0x14000000,0},new float[]{0f,1f},Shader.TileMode.CLAMP);
  mLightShadow = new RadialGradient(mSize / 2,0x6433b5e5,0x1433b5e5,Shader.TileMode.CLAMP);
}
项目:FMTech    文件SVGParser.java   
private void finishGradients() {
    for(Gradient gradient : gradientMap.values()) {
        if (gradient.xlink != null) {
            Gradient parent = gradientMap.get(gradient.xlink);
            if (parent != null) {
                gradient.inherit(parent);
            }
        }
        int[] colors = new int[gradient.colors.size()];
        for (int i = 0; i < colors.length; i++) {
            colors[i] = gradient.colors.get(i);
        }
        float[] positions = new float[gradient.positions.size()];
        for (int i = 0; i < positions.length; i++) {
            positions[i] = gradient.positions.get(i);
        }
        if (colors.length == 0) {
            Log.d("BAD",gradient.tilemode);
        }
    }
}
项目:codenameone    文件AndroidGraphics.java   
public void fillRecTradialGradient(int startColor,int endColor,int x,int y,int width,int height,float relativeX,float relativeY,float relativeSize) {
    boolean antialias = paint.isAntiAlias();
    paint.setStyle(Paint.Style.FILL);
    paint.setAntiAlias(false);
    paint.setAlpha(255);
    float radius = Math.min((float)width,(float)height) * relativeSize;
    int centerX = (int) (width * (1 - relativeX));
    int centerY = (int) (height * (1 - relativeY));

    paint.setShader(new RadialGradient(x + centerX,y + centerY,0xff000000 | startColor,0xff000000 | endColor,Shader.TileMode.MIRROR));
    canvas.save();
    applyTransform();
    canvas.drawRect(x,y,x + width,y + height,paint);
    paint.setAntiAlias(antialias);
    paint.setShader(null);
    unapplyTransform();
    canvas.restore();
}
项目:ApiDemos    文件Animationcloning.java   
private ShapeHolder addBall(float x,float y) {
    ovalShape circle = new ovalShape();
    circle.resize(50f * mDensity,50f * mDensity);
    ShapeDrawable drawable = new ShapeDrawable(circle);
    ShapeHolder shapeHolder = new ShapeHolder(drawable);
    shapeHolder.setX(x - 25f);
    shapeHolder.setY(y - 25f);
    int red = (int)(100 + Math.random() * 155);
    int green = (int)(100 + Math.random() * 155);
    int blue = (int)(100 + Math.random() * 155);
    int color = 0xff000000 | red << 16 | green << 8 | blue;
    Paint paint = drawable.getPaint(); //new Paint(Paint.ANTI_ALIAS_FLAG);
    int darkColor = 0xff000000 | red/4 << 16 | green/4 << 8 | blue/4;
    RadialGradient gradient = new RadialGradient(37.5f,Shader.TileMode.CLAMP);
    paint.setShader(gradient);
    shapeHolder.setPaint(paint);
    balls.add(shapeHolder);
    return shapeHolder;
}
项目:AndroidCourses    文件RadialGradientFillBitmapTextureAtlasSourceDecorator.java   
public RadialGradientFillBitmapTextureAtlasSourceDecorator(final IBitmapTextureAtlasSource pBitmapTextureAtlasSource,final IBitmapTextureAtlasSourceDecoratorShape pBitmapTextureAtlasSourceDecoratorShape,final int[] pColors,final float[] pPositions,final RadialGradientDirection pRadialGradientDirection,final TextureAtlasSourceDecoratorOptions pTextureAtlasSourceDecoratorOptions) {
    super(pBitmapTextureAtlasSource,pBitmapTextureAtlasSourceDecoratorShape,pTextureAtlasSourceDecoratorOptions);
    this.mColors = pColors;
    this.mPositions = pPositions;
    this.mRadialGradientDirection = pRadialGradientDirection;

    this.mPaint.setStyle(Style.FILL);

    final int width = pBitmapTextureAtlasSource.getTextureWidth();
    final int height = pBitmapTextureAtlasSource.getTextureHeight();

    final float centerX = width * 0.5f;
    final float centerY = height * 0.5f;

    final float radius = Math.max(centerX,centerY);

    switch (pRadialGradientDirection) {
        case INSIDE_OUT:
            this.mPaint.setShader(new RadialGradient(centerX,centerY,pColors,pPositions,TileMode.CLAMP));
            break;
        case OUTSIDE_IN:
            ArrayUtils.reverse(pColors);
            this.mPaint.setShader(new RadialGradient(centerX,TileMode.CLAMP));
            break;
    }
}
项目:MyCTFWriteUps    文件CircleImageView.java   
public ovalShadow(int i,int j)
{
    this$0 = CircleImageView.this;
    super();
    mShadowPaint = new Paint();
    mShadowRadius = i;
    mCircleDiameter = j;
    float f = mCircleDiameter / 2;
    float f1 = mCircleDiameter / 2;
    float f2 = mShadowRadius;
    circleimageview = android.graphics.Shader.TileMode.CLAMP;
    mRadialGradient = new RadialGradient(f,f1,f2,new int[] {
        0x3d000000,0
    },CircleImageView.this);
    mShadowPaint.setShader(mRadialGradient);
}
项目:ApiDemos    文件CustomEvaluator.java   
private ShapeHolder createBall(float x,Shader.TileMode.CLAMP);
    paint.setShader(gradient);
    shapeHolder.setPaint(paint);
    return shapeHolder;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。