bezier曲线的应用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bezier曲线的应用相关的知识,希望对你有一定的参考价值。

计算机图形学

Bezier曲线会落在 convex hull 之内,不会有不可预期形状
  Bezier曲线有整体修正(globally modification)之特性 – 也就是更动任一控制点会更改整条曲线之形状
  Bezier曲线所有混成函数的和为 1
  Bezier曲线的反曲点之数少於控制多边形之边数
  Bezier曲线与一平面的相交点之数 少於 该平面与控制多边形之的相交点之数
  <2>一、Bezier曲线定义:
  给定n+1个控制顶点Pi(i=0~n) ,则Bezier曲线定义为:
  P(t)=∑Bi,n(t)Pi t∈[0,1]
  其中:Bi,n(t)称为基函数。
  Bi,n(t)=Ci nti (1-t)n-i
  Ci n=n!/(i!*(n-i)!)
  二、Bezier曲线性质
  1、端点性质:
  a)P(0)=P0, P(1)=Pn, 即:曲线过二端点。
  b)P’(0)=n(P1-P0), P’(1)=n(Pn-Pn-1)
  即:在二端点与控制多边形相切。
  2、凸包性:Bezier曲线完成落在控制多边形的凸包内。
  3、对称性:由Pi与Pn-i组成的曲线,位置一致,方向相反。
  4、包络性:Pn (t)=(1-t)Pn-1 (t)+tPn-1 (t)
  在CAD/CAM中,常采用Bezier曲线曲面,这样便于理解曲线/曲面。但采用Bezier形式的曲线曲面不能精确的表示二次曲线和二次曲面,如球体和圆。将多项式改为有理形式,不仅能精确表示二次曲线和二次曲面,且增加了设计的自由度。重复的进行两点线性插值,可以构造Bezier Curve。重复的进行两点有理插值,可以构造有理Bezier Curve。
  与控制顶点类似,有理Bezter曲线上的点可映射为Bezter曲线上的点或对应的控制多边形上的点。在透视投影使用理形式与非有理形式产生相同投影时,有理Besier曲线曲面和有理B样条曲线曲面继承了Bezier曲线曲面和B样条曲线曲面的简单、优美的特性。这种形式,数学上的分析及几何特性的掌握了解都比其他4D空间(wx、wy、wz、w)方法和单纯的3D空间有理形式要简单和容易。
  现在,有理曲线曲面不仅仅用于表示和构造二次曲线曲面。对有理曲线曲面的权因子该如何选取往往不很清楚,而且有理形式的计算比非有理形式复杂,但是,由于其构造特性,现在人们已经开始考虑有理Bezter和有理B样条曲线曲面的应用
参考技术A 一般就是勾勒边框 制作外形等 这个在一般的软件中用到比较多 比如ps的勾画边缘 3dmax中制作物体等 参考技术B 由于用计算机画图大部分时间是操作鼠标来掌握线条的路径,与手绘的感觉和效果有很大的差别。即使是一位精明的画师能轻松绘出各种图形,拿到鼠标想随心所欲的画图也不是一件容易的事。这一点是计算机万万不能代替手工的工作,所以到目前为止人们只能颇感无奈。使用贝塞尔工具画图很大程度上弥补了这一缺憾。
  贝塞尔曲线是计算机图形图像造型的基本工具,是图形造型运用得最多的基本线条之一。它通过控制曲线上的四个点(起始点、终止点以及两个相互分离的中间点)来创造、编辑图形。其中起重要作用的是位于曲线中央的控制线。这条线是虚拟的,中间与贝塞尔曲线交叉,两端是控制端点。移动两端的端点时贝塞尔曲线改变曲线的曲率(弯曲的程度);移动中间点(也就是移动虚拟的控制线)时,贝塞尔曲线在起始点和终止点锁定的情况下做均匀移动。注意,贝塞尔曲线上的所有控制点、节点均可编辑。这种“智能化”的矢量线条为艺术家提供了一种理想的图形编辑与创造的工具。
“贝赛尔”工具在photoshop中叫“钢笔工具”;在CorelDraw中翻译成“贝赛尔工具”;而在Fireworks中叫“画笔”。它是用来“画线”造型的一种专业工具。当然还有很多工具也可以完成画线的工作,例如大家常用的photoshop里的直线、喷枪、画笔工具,Fireworks里的直线、铅笔和笔刷工具,CorelDraw里的自由笔,手绘工具等等。
  用“贝塞尔”工具无论是画直线或是曲线,都非常简单,随手可得。其操作特点是通过用鼠标在面板上放置各个锚点,根据锚点的路径和描绘的先后顺序,产生直线或者是曲线的效果。我们都知道路径由一个或多个直线段或曲线段组成。锚点标记路径段的端点。在曲线段上,每个选中的锚点显示一条或两条方向线,方向线以方向点结束。方向线和方向点的位置确定曲线段的大小和形状。移动这些元素将改变路径中曲线的形状,可以看右图。路径可以是闭合的,没有起点或终点(如圆圈),也可以是开放的,有明显的端点(如波浪线)。

曲线理论-详解Bezier曲线B样条曲线NURBS曲线

文章目录

曲线理论-详解Bezier曲线、B样条曲线、NURBS曲线

一直使用三维软件绘制曲线曲面,然而对曲线曲面的基本理论并不了解,于是查找相关资料学习,将各类曲线的原理总结如下,后续会不断补充。

样条曲线

样条(Spline)

在计算机科学的计算机辅助设计和计算机图形学中,样条通常是指分段定义的多项式参数曲线。由于样条构造简单,使用方便,拟合准确,并能近似曲线拟合和交互式曲线设计中复杂的形状,样条是这些领域中曲线的常用表示方法。

Bezier曲线,B样条曲线 ,NURBS曲线

以上三种曲线都是由控制点进行表示的曲线。

由控制点表示曲线的一般表达式如下:

权函数会随着参数t不断变化,即每个控制点对曲线上不同位置的形状的影响是不同的。

三种曲线的区别在于权函数的不同。

Bezier曲线

特点

B样条曲线

参考内容

B样条

B样条 - 维基百科,自由的百科全书 (wikipedia.org)

非均匀有理B样条 - 维基百科,自由的百科全书 (wikipedia.org)

学堂在线课程:

Grasshopper参数化设计与建模 - 学堂在线

以上是关于bezier曲线的应用的主要内容,如果未能解决你的问题,请参考以下文章

Hermit曲线、Bezier曲线、B样条曲线有啥关系?有啥区别?各自的应用范围?

de Casteljau算法编写N次bezier曲线的VC程序?

bezier曲线的一个计算问题

Bezier(贝塞尔)曲线简介

Bezier曲线定义与性质,分别给出算法简述。

构造一条三次Bezier曲线