Android高级-贝塞尔曲线与计算规则

我们先看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:地址============

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值