美文网首页
Android 颜色渲染 SweepGradient扫描/梯度渲

Android 颜色渲染 SweepGradient扫描/梯度渲

作者: 三季人 | 来源:发表于2016-03-02 10:33 被阅读2130次

    SweepGradient

    为什么什么叫扫描渲染呢? 相信大家都看过雷达扫描的效果,尤其是在安全软件中.

        public SweepGradient(float cx, float cy, int[] colors, float[] positions)
        Parameters:
        cx
        渲染中心点x 坐标
    
        cy
        渲染中心y 点坐标
    
        colors
        围绕中心渲染的颜色数组,至少要有两种颜色值
    
        positions
        相对位置的颜色数组,可为null,  若为null,可为null,颜色沿渐变线均匀分布
    
        public SweepGradient(float cx, float cy, int color0, int color1)
        Parameters:
        cx
        渲染中心点x 坐标
    
        cy
        渲染中心点y 坐标
    
        color0
        起始渲染颜色
    
        color1
        结束渲染颜色
    

    代码演示

        public class SweepGradientView extends View {  
      
    Paint mPaint = null;    
    // 梯度渲染    
    Shader mSweepGradient = null;    
      
    public SweepGradientView(Context context) {  
        super(context);  
          
         // 创建SweepGradient对象    
        // 第一个,第二个参数中心坐标    
        // 后面的参数与线性渲染相同    
        mSweepGradient = new SweepGradient(240, 360, new int[] {Color.CYAN,Color.DKGRAY,Color.GRAY,Color.LTGRAY,Color.MAGENTA,    
                Color.GREEN,Color.TRANSPARENT, Color.BLUE }, null);    
        mPaint = new Paint();    
    }  
      
    
    
    public SweepGradientView(Context context, AttributeSet attrs) {  
        super(context, attrs);  
    }  
      
      
    @Override  
    protected void onDraw(Canvas canvas) {  
        super.onDraw(canvas);  
          
         // 绘制梯度渐变    
        mPaint.setShader(mSweepGradient);    
          
        canvas.drawCircle(240, 360, 200, mPaint);  
    }  
    

    }

    相关文章

      网友评论

          本文标题:Android 颜色渲染 SweepGradient扫描/梯度渲

          本文链接:https://www.haomeiwen.com/subject/hsdnkttx.html