知识补充
G0连续是点连续
G1连续是斜率连续
G2连续是曲率连续
用羊角螺线绘制G2圆角
首先绘制出一个羊角螺线
羊角螺线无法绘制一个关于y=x对称的直角过渡,但可以绘制0°-45°的过渡。
所以可以取羊角曲线的x从0到斜率为1(此时切线为45°)的部分。
先做一条过原点的45°的直线
平移这条直线,找到他和羊角曲线的切点
取出这部分羊角曲线
对称后拼接
这样就形成了一个曲率连续圆角
不使用羊角曲线绘制G2圆角
羊角曲线很完美,但是他是超越函数,实际它并不好绘制。
或许可以重新考虑一下G2曲线的本质,然后使用其他数学函数实现。
我们需要的图像,只需要满足函数2阶导连续,且曲线的切线能从0°过渡到45°。
学过高等数学,我们知道以下知识:
点连续说明函数连续
斜率连续说明一阶导连续
曲率连续说明二阶导连续
n阶导连续,需要至少n+1次函数
综合以上,我们需要G2连续,则应该是一个三次函数。
考虑曲线 y=Cx³ 此曲线满足G2连续
设斜率为1时,x距离原点长度为s,可轻松解出s=(3C)^(-1/2)
反解C=(3s²)^(-1)
代入曲线公式 y=x³/(3s²)
参考文章
iOS 7 的圆角图标是怎样一个图形? - 知乎 (zhihu.com)
利用羊角曲线画不规则圆角图标 - 知乎 (zhihu.com)
sddsd
本文含有隐藏内容,请 开通VIP 后查看