1、一阶贝塞尔曲线
一阶贝塞尔曲线的原理就是一条直线,其实就是直接画了一个Path出来,在这里不做过多的介绍,本文主要介绍的是二阶的贝塞尔曲线。
2、二阶贝塞尔曲线
2.1、二阶贝塞尔曲线效果图
2.2、实现原来
-
(1)、 二阶曲线由两个数据点start point(A) 、end point(C),一个控制点(B)来描述曲线状态,大致如下:
- (2)、 连接AB BC,并在AB上取点D,BC上取点E,使其满足条件:AD:AB = BE:BC
- (3) 、连接DE,取点F,使得:AD:AB = BE:BC = DF:DE
-
(4)、动态图
3、三阶贝塞尔曲线
二阶曲线由两个数据点:start point(P0) 、end point(P3),两个控制点:P1、P2来描述曲线状态
- (1)、链接P0和P1 并在取点A
- (2)、链接P1和P2 并在取点B
- (3)、链接P2和P3 并在取点C
- (4)、使P0A : P0P1 = P1B : P1P2 = P2C : P2P3
- (5)、链接A和B 并在取点D
- (6)、链接B和C 并在取点E
- (7)、使*AD : AB = BE : BC = P0A : P0P1 = P1B : P1P2 = P2C : P2P3
- (8)、链接D和E 并在取点P
使DP : DE = AD : AB = BE : BC = P0A : P0P1 = P1B : P1P2 = P2C : P2P3
4、代码
4.1、实现到七阶的贝塞尔
4.2、查看CubicBezierEasing的贝塞尔曲线的展示
- viewModel.onProgressChanged