塞尔曲

1、一阶贝塞尔曲线

一阶贝塞尔曲线的原理就是一条直线,其实就是直接画了一个Path出来,在这里不做过多的介绍,本文主要介绍的是二阶的贝塞尔曲线。

2、二阶贝塞尔曲线

2.1、二阶贝塞尔曲线效果图
a9d3031e-c46b-4c7c-9b70-46e747b8d938.gif
2.2、实现原来
  • (1)、 二阶曲线由两个数据点start point(A) 、end point(C),一个控制点(B)来描述曲线状态,大致如下:


    99cc1255-97f4-490d-b00d-c6031531bcce.jpg
  • (2)、 连接AB BC,并在AB上取点D,BC上取点E,使其满足条件:AD:AB = BE:BC
    ab682f47-b263-40da-9a2f-9a0a0499ba60.jpg
  • (3) 、连接DE,取点F,使得:AD:AB = BE:BC = DF:DE
    e3ee5657-ad91-4b2a-a461-ba9962cad76f.jpg
  • (4)、动态图


    b71052cc-dea0-4e7a-a4f6-42fda6811009.gif

3、三阶贝塞尔曲线

D0F48BF2-A3A3-4170-91A2-06DFFDE7B9EC.png

二阶曲线由两个数据点: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
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容