左右canvas.drawArc,canvas.drawOval 和RectF 关联

简介:

1.paint.setStyle(Paint.Style.STROKE)

//    radius="100dp"
//    interRadius="40dp"
//    linearWidth="10dp"
//    stokenWidth="40dp"


        mPaint=new Paint();
        mPaint.setStyle(Paint.Style.STROKE);
        mPaint.setStrokeWidth(mStokenWidth);
        mPaint.setColor(Color.BLUE);
        mPaint.setAntiAlias(true);

        mPaint2=new Paint();
        mPaint2.setStyle(Paint.Style.STROKE);
        mPaint2.setColor(Color.BLACK);

        int left=mStokenWidth/2;
        int top=mStokenWidth/2;
        mRectF=new RectF();
        mRectF.left=left;
        mRectF.top=top;
        mRectF.right=(mRadius-left)*2;
        mRectF.bottom=(mRadius-top)*2;

onDraw

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        canvas.drawArc(mRectF, 0, 90, false, mPaint);
        mPaint.setColor(Color.RED);
        canvas.drawArc(mRectF, 90, 90, false, mPaint);
        mPaint.setColor(Color.YELLOW);
        canvas.drawArc(mRectF, 180, 90, false, mPaint);
        mPaint.setColor(Color.GRAY);
        canvas.drawArc(mRectF, 270, 90, false, mPaint);
        canvas.drawRect(mRectF,mPaint2);
    }


如图:


2.paint.setStyle(Paint.Style.FILL)

效果例如以下


RectF画的矩形刚好成为了扇形的外切矩形

说明当style 为stoken 的时候。rectf画出的举行每条边刚好在描边的中间

什么时候style至Fill什么时候,rect外整个图形长方形切割

版权声明:本文博主原创文章,博客,未经同意不得转载。








本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4869890.html,如需转载请自行联系原作者


相关文章
|
移动开发 前端开发 JavaScript
让自己也能使用Canvas
<canvas> 是 HTML5 新增的元素,可使用JavaScript脚本来绘制图形。例如:画图,合成照片,创建动画甚至实时视频处理与渲染。
让自己也能使用Canvas
|
4月前
|
移动开发 前端开发 JavaScript
canvas详解00-认识canvas
canvas详解00-认识canvas
35 1
canvas详解00-认识canvas
|
移动开发 前端开发 JavaScript
Canvas2D基础
1. canvas内容就是上面这些了,就好比设计师能用的颜色就那么多,但是将颜色,图形组合起来,创意真的是无限的,canvas也是如此。 2. webGL是一个 对OpenGL ES 2.0浏览器实现接口,用于3D绘画,生产阶段最好不要用,可用于实验阶段。
210 0
|
12月前
|
存储 XML 前端开发
神奇的 Canvas
canvas是为了解决页面只能显示静态图片而出现的一种可以使用JavaScript绘制的HTML标签,它可以接受两个参数width和height(原来有三个,还有一个moz-opaque控制透明度,已经废弃了)
80 0
|
前端开发
用canvas画七巧板 -- 练习canvas
用canvas画七巧板 -- 练习canvas
92 0
|
移动开发 前端开发 小程序
Canvas 2D详解
Canvas 2D详解
Canvas 2D详解
|
前端开发
canvas-缤纷纸片
第一次用canvas绘图,其实难度是挺大的,基于js和一些数学知识,还有参考了网上很多的例子,最终完成了demo。
1268 0
fbh
|
Web App开发 前端开发
分享一个canvas代码
首先需要已入jquery 然后直接运行 function project3D(x,y,z,vars){var p,d;x-=vars.
fbh
1021 0
|
前端开发
第156天:canvas(三)
一、变形 1.1 translate translate(x, y) ​ 用来移动 canvas 的原点到指定的位置 ​ translate方法接受两个参数。x 是左右偏移量,y 是上下偏移量,如右图所示。
955 0