CSS贝塞尔曲线

SVG与canvas绘制弯线都要用到贝塞尔曲线,它分两种形式(二次方与三次方)

我们先看canvas的。

quadraticCurveTo(cp1x, cp1y, x, y) //二次方
bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y)//三次方

它们都有一个起点一个终点(图中的蓝点),但二次方贝塞尔曲线只有一个(红色)控制点点)而三次方贝塞尔曲线有两个。参数 x 和 y 是终点座标,cp1x 和 cp1y 是第一个控制点的座标,cp2x 和 cp2y 是第二个的。

在SVG中有一个好用的属性,叫path。我们可以向传入一些特殊的字符串来实现复杂的图形。我们看它关于贝塞尔曲线的相关实现。

命令函数名字参数说明
S(绝对定位)
s(相对定位)
shorthand/smooth curveto (x2 y2 x y)+ 二次方贝塞尔曲线
C(绝对定位)
c(相对定位)
curveto (x1 y1 x2 y2 x y)+ 三次方贝塞尔曲线
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章