moveTo 的作用:
将下一个轮廓的起点设置为点(x,y)
我们在使用lineTo的使用启动是(0,0)肯定不是每次都想从(0,0)点开始所以配合moveTo 移动之后的点在使用lineTo移动。
下面看下代码和效果图
paint.setAntiAlias(true);
// 设置画笔的style (Paint.Style.FILL填充,Paint.Style.STROKE描边,Paint.Style.FILL_AND_STROKE填充加描边 )
paint.setStyle(Paint.Style.STROKE);
// 设置画笔的颜色
paint.setColor(Color.RED);
//设置描边宽度
paint.setStrokeWidth(10f);
Path path = new Path();
path.moveTo(300,300);
path.lineTo(300,600);
path.moveTo(300,300);
path.lineTo(600,600);
// 绘制线
canvas.drawPath(path,paint);
效果图
rMoveTo 的作用:
相对于上一个轮廓上的最后一个点设置下一个轮廓的起点。如果没有以前的轮廓,则处理与moveTo()相同
这里最后一个点设置下一个轮廓的起点怎么理解呢下面上面的数据说下(注意上面的图我给出的划线的顺序)
paint.setAntiAlias(true);
// 设置画笔的style (Paint.Style.FILL填充,Paint.Style.STROKE描边,Paint.Style.FILL_AND_STROKE填充加描边 )
paint.setStyle(Paint.Style.STROKE);
// 设置画笔的颜色
paint.setColor(Color.RED);
//设置描边宽度
paint.setStrokeWidth(10f);
Path path = new Path();
//前面的的轮廓,则处理与moveTo()相同这里就不再改为rMoveTo了
path.moveTo(300,300);
path.lineTo(300,600);
path.rMoveTo(300,300);
path.lineTo(600,600);
// 绘制线
canvas.drawPath(path,paint);
效果图如下
希望上图大家能理解最后一个点设置下一个轮廓的起点的意思。
本文地址:https://blog.csdn.net/qq_33210042/article/details/108579005