百万圆角少女微笑与生生不息

x3+y3=1

我们先来聊聊这个被戏称为“价值万元的椭圆”。操作过illustrator的人对于曲线工具与锚点并不会陌生,将锚点的手柄往某个方向拖拽后会产生一条曲线,这条曲线的正式名称就是"贝塞尔曲线(或贝茨曲线,Béziercurve)",曲线当然还分很多种,这里不做深究。

一般来说,我们会使用"圆角工具"来绘制圆角矩形,实际上这样制作出的圆角矩形,在直线与圆角间过度实际上是不自然的,这与原研哉选择的x^n+y^n=1公式所绘制出的圆角矩形对比就会十分明显,后者明显给人更加顺滑的感觉,这是为什么呢?

这里面就涉及到曲率概念,在犀牛等3D软件中我们可以更加直接的看到曲率的样子。使用圆角工具制作出得圆角矩形,其直线与曲线间是一种单纯的线与线间的相切关系,这一般被称为G1连续,而使用x^n+y^n=1所产生的圆角矩形的切角之所以顺滑,是源自于这些看不到的呈现的递增递减关系的曲率,也叫G2连续,又称为曲率连续。

在3d软件中,曲线周围长长的“胡须”表现的便是曲率,

单纯相切关系的G1连续的“胡须”会出现断层,

而G2连续中曲率是平滑的曲线

原研哉所说的这个公式x^n+y^n=1究竟是呢?实际上其是

x/a

^n+

y/b

^n=1的简化版本,它绘制出的圆还有个有一个非常厉害的名字叫做"超级椭圆(Superellipse)",超级椭圆在设计领域早已经不是一个陌生的概念了,例如最近在朋友圈引起了不小反响的Clubhouse在UI设计中便是使用了该超级椭圆。在使用超级椭圆公式时设计界比较公认的是n=2.5,而此次原研哉为小米选择的n值是3。

Clubhouse在UI设计中也使用了超级椭圆公式

为了保证产品表面的绝对平滑,曲率连续往往更多的使用在产品或者建筑等3d领域,在3d软件中我们也是直接调整曲率来使得曲面达到更加顺滑的效果。在平面软件中,我们可以通过更少的锚点可以达到更加连续的曲率。那么我们是否可以用平面软件绘制一个这样曲率连续的超级椭圆呢?

实际上,除去脚本与直接临摹外,目前平面的绘图软件还没有一个能完美的绘制出这样的曲线的方法,但我们可以通过数学途径,绘制一条尽可能接近超级椭圆曲率的贝塞尔曲线,此处如果不想看推导过程的话可以直接跳到最后。

设置一个正圆的情况,

贝塞尔曲线与超级椭圆相重合,

用此方法来推导出N与曲率的关系

向上滑动阅览

我们可以利用正圆,这个贝塞尔曲线与超级椭圆一致的情况下,找到n与k的关系

*超级椭圆算是轴对称图形所以k(曲率)一定是相同的

我们用贝塞尔曲线也画个正圆,会出现以下坐标。

B0:(0,1);

B1:(k,1);

B2:(1,k);

B3:(1,0);

B1与B2是圆的手柄点,这里也可以称作为曲率。

假设有一个在此曲线有一个的中点

t=(0.5,0.5)

带入到贝塞尔曲线公式:

P(t)=

B0

(1-t)^3+

B1

3t(1-t)^2+

B2

3t^2(1-t)+

B3

t^3

我们可以得到

P(0.5)=1/8(B0+3B1+3B2+B3)

将上述的k值带入可以得到下面的公式,

只看x的情况下

x=0.5=1/8(0+3k+3+1)

而正圆情况下的,而因为椭圆在是个中心对称的形状,无论在那个象限都不变

所以只考虑a=b=1

x/a

^n+

y/b

^n=1就简化为了

x

^n+

y

^n=1

中间点的x=y

此时可以变成

x=y=1/(n√2)

将两个公式结合在一起便是

1/(n√2)=1/8(0+3k+3+1)

便可以得到n与k的关系

k=8/3((1/(n√2)-1/2)

那我们可以得到

n=2,k=0.

n=2.5,k=0.,是n=2时候的k的1.倍

如上图所示,在角度θ是确定的情况下,tanθ=k/x成线性关系,如果需要知道k倍数,只需要将x扩展着该倍数就行。

那么,我们最后再来看看n=3的情况下,k=0.,是n=2时候的k的1.倍,我们就需要做一个1.倍的圆,然后将这个锚点往回来到原本的圆的位置即可(如下图)。使用上述公式,可以制作出十分接近于不同n值下超级椭圆曲线。

n=3的情况下,需要绘制一个比原来大1.倍的圆,再将锚点往回移动,即可获得一个近似超级椭圆的贝塞尔曲线

这里并不想就设计师是否偷懒了进行说明,只想顺带提一下这个公式背后的一些故事,以便更好的说明这并不是一个随便的圆。网络上也有“



转载请注明地址:http://www.xiniua.com/jsyl/9240.html
  • 上一篇文章:
  • 下一篇文章: 没有了