先引用一段大佬的话,解释为什么除了样条线还有这种曲线
NURBS是有理B-splines曲线https://www.zhihu.com/search?q=%E6%9C%89%E7%90%86B-splines%E6%9B%B2%E7%BA%BF&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A74412564%7D,它的基函数是有理函数。而Bezier曲线https://www.zhihu.com/search?q=Bezier%E6%9B%B2%E7%BA%BF&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A74412564%7D和B-splines曲线更接近一些,基函数都为多项式函数https://www.zhihu.com/search?q=%E5%A4%9A%E9%A1%B9%E5%BC%8F%E5%87%BD%E6%95%B0&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A74412564%7D。从Bezier 到 B-splines 到 NURBS的演化过程是一种扩展,应用这些曲线能够准确描述的几何范围依次变大。
Bezier曲线可以看成B-splines曲线的特殊形式。当B-splines曲线的参数空间只有一个区间,并且对应的knot vector是open时则和Bezier曲线的定义相同。
而NURBS曲线可看作为B-splines曲线的扩展形式。利用NURBS可以完美地表示圆锥曲线。几何上,可以将NURBS曲线理解为B-spllines曲线在某一平面的投影。
(作者:Lei ZH)
原文链接:https://www.zhihu.com/question/30211038
在绘制图形时NURBS有专门的编辑器,同样可以编辑点、线、面,以及完成曲面操作。
下面是3dsMAX绘图内容:
首先绘制底边的大致图形,NURBS线
调整底边图形的大小、曲率等。并复制成四层,大小各不相同:
效果:
将上两层向上拉伸,变成鼠标的大致模型
下面绘制侧面:选择修改器中,NURBS线的U向放样
从下向上依次点击曲线,绘制出侧面,效果:
在【创建曲面】中选择【封口】
点击底部的轮廓线,完成封口
如果出现黑色的情况,可以勾选修改器中的【翻转法线】(在对应的曲面编辑器中)
从合并后的曲线整体中分离并复制出一条,作为后续绘制的依据:
在已有的基础上,将刚才分离并复制的曲线再次复制,向上移动,并再次使用U向放样,生成侧面
绘制顶部:
先再次导出一个轮廓曲线,并用直线将两侧连接,中央再添加一条曲线(在侧视图中应当和轮廓线相同的高度,或者高于轮廓线一点)
这里忘了存图了(x)
渲染效果:
大小没有调整到最好,但是懒得调了(x)
接下来绘制滚轮,大概是这样的形状:
分别绘制一个长方体和一个圆角长方体
在【复合对象】中选择【布尔】
生成两者的并集
效果:
转化为可编辑网格并调整对应的高度
其实用【放样】生成沿着指定曲线的圆柱是更好的,但是我懒(x)
这里只做演示
添加一个小的圆角长方体作为滚轮(圆柱应该会更好)
修改一下颜色,渲染效果: