我们先看Path详解:
我们还是从demo看吧
看demo
运行结果:
去掉闭合:
其中
mPath.rLineTo和mPaht.lineTo效果是一样的,我们看一下区别:
运行效果:
我们可以看到,lineTo是直接传入的坐标值,而rLineTo是从moveTo的坐标开始,要x,y轴需要分别增加多少的量,
一阶贝塞尔曲线就是一条直线:
mPath.lineTo()表示的就是一条一阶贝塞尔曲线
//添加子图形addXXX
//添加弧形
mPath.addArc(200,200,400,400,-225,225);
运行结果:
还有其他的一些效果:我们接着来看一下:
运行结果:
追加图形:
运行结果:
我们再把前面的弧形添加出来
forceMoveTo,true,绘制时移动起点,false,绘制时连接最后一个点与圆弧起点
运行结果:
如果将上面的false 改为true 表示强制移动,我们看一下运行效果:
添加一个路径
运行结果:
//添加圆角矩形, CW顺时针,CCW逆时针
运行结果:
画二阶贝塞尔曲线:
运行结果:
运行结果与上面的是一样的:
三阶贝塞尔曲线
运行结果:
贝塞尔曲线
贝塞尔曲线就是通过降阶的方式,来表示同一个时间点上的曲线
我们了解了计算公式 我们来看一下如何绘制贝塞尔曲线
接上文我们绘制的三个曲线:
我们通过BezierView 来实现控制点然后再去连线:
晚些会做一个类似qq消息拖拽消失的案例~
github:地址============