作者:历史本轻狂 | 来源:互联网 | 2023-08-04 11:38
我们先看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:地址============