Bézier surface(贝赛尔曲面)

贝塞尔曲面是一种用于计算机图形学、计算机辅助设计和有限元建模的数学样条。与贝塞尔曲线一样,贝塞尔曲面由一组控制点定义。与插值在许多方面相似,一个关键的区别是表面通常不通过中央控制点;相反,它向他们“伸展”,好像每个人都是一种吸引力。它们在视觉上是直观的,对于许多应用来说,在数学上是方便的。

给定的贝氏度(n,m)曲面由一组(n + 1)(m + 1)控制点ki,j定义,它将单位正方形映射为嵌入在与{ ki,j }相同维数的空间中的光滑连续曲面。例如,如果k是四维空间中的所有点,那么曲面将在四维空间中。 二维贝塞尔曲面可以定义为参数曲面,其中点p的位置作为参数坐标u,v的函数由下式给出:

在单位平方上评估,其中

是伯恩斯坦多项式,并且

是二项式系数。

贝塞尔曲面的一些性质:

贝塞尔曲面在所有线性变换和平移下将以与其控制点相同的方式变换。

(u,v)空间中的所有u =常数和v =常数线,尤其是变形的(u,v)单位正方形的所有四条边都是贝塞尔曲线。

贝塞尔曲面将完全位于其控制点的凸包内,因此也完全位于任何给定笛卡尔坐标系中其控制点的边界框内。

面片中与变形单位正方形的角对应的点与四个控制点重合。

然而,贝塞尔曲面通常不会穿过其其他控制点。

通常,贝塞尔曲面最常见的用途是作为双三次曲面网(其中m = n = 3)。因此,单个双三次曲面片的几何形状完全由一组16个控制点定义。这些曲线通常以类似于贝塞尔曲线链接形成B样条曲线的方式链接形成B样条曲面。 更简单的贝塞尔曲面由双二次曲面片(m = n = 2)或贝塞尔三角形构成。

Bézier surface(贝塞尔曲面)的更多相关文章

  1. NeHe OpenGL教程 第二十八课:贝塞尔曲面

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  2. 数学图形之贝塞尔(Bézier)曲面

    前面章节中讲了贝塞尔(Bézier)曲线,而贝塞尔曲面是对其多一个维度的扩展.其公式依然是曲线的公式: . 而之所以由曲线变成曲面,是将顶点横向连了再纵向连. 很多计算机图形学的教程都会有贝塞尔曲面的 ...

  3. OpenGL超级宝典笔记——贝塞尔曲线和曲面(转)

    http://my.oschina.net/sweetdark/blog/183721 参数方程表现形式 在中学的时候,我们都学习过直线的参数方程:y = kx + b;其中k表示斜率,b表示截距(即 ...

  4. Android 自定义View高级特效,神奇的贝塞尔曲线

    效果图 效果图中我们实现了一个简单的随手指滑动的二阶贝塞尔曲线,还有一个复杂点的,穿越所有已知点的贝塞尔曲线.学会使用贝塞尔曲线后可以实现例如QQ红点滑动删除啦,360动态球啦,bulabulabul ...

  5. 贝塞尔曲线:原理、自定义贝塞尔曲线View、使用!!!

    一.原理 转自:http://www.2cto.com/kf/201401/275838.html Android动画学习Demo(3) 沿着贝塞尔曲线移动的Property Animation Pr ...

  6. DirectX11 With Windows SDK--33 曲面细分阶段(Tessellation)

    前言 曲面细分是Direct3D 11带来的其中一项重要的新功能.它引入了两个可编程着色器阶段以及一个固定的镶嵌处理过程.简单来说,曲面细分技术可以将几何体细分为更小的三角形,并以某种方式把这些新生成 ...

  7. 【Notes_8】现代图形学入门——几何(基本表示方法、曲线与曲面)

    几何 几何表示 隐式表示 不给出点的坐标,给数学表达式 优点 可以很容易找到点与几何之间的关系 缺点 找某特定的点很难 更多的隐式表示方法 Constructive Solid Geometry .D ...

  8. canvas贝塞尔曲线

    贝塞尔曲线 Bézier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线. 曲线定义:起始点.终止点.控制点.通过调整控制点,贝塞尔曲线的形状会发生变化. 1962年,法国数学家Pierr ...

  9. Visualize Surface by Delaunay Triangulator

    Visualize Surface by Delaunay Triangulator eryar@163.com Abstract. Delaunay Triangulation is the cor ...

随机推荐

  1. HTTP node静态资源请求加载demo

    MIME type的缩写为(Multipurpose Internet Mail Extensions)代表互联网媒体类型(Internet media type),MIME使用一个简单的字符串组成, ...

  2. CSA Round #50 (Div. 2 only) Min Swaps(模拟)

    传送门 题意 给出一个排列,定义\(value为\sum_{i=1}^{n-1}abs(f[i+1]-f[i])\) \(swap(a[i],a[j])(i≠j)为一次交换\),询问最少的交换次数使得 ...

  3. bzoj 1023: [SHOI2008]cactus仙人掌图【tarjan+dp+单调队列】

    本来想先求出点双再一个一个处理结果写了很长发现太麻烦 设f[u]为u点向下的最长链 就是再tarjan的过程中,先照常处理,用最长儿子链和次长儿子链更新按ans,然后处理以这个点为根的环,也就是这个点 ...

  4. bzoj 3872: [Poi2014]Ant colony【树形dp+二分】

    啊我把分子分母混了WA了好几次-- 就是从食蚁兽在的边段成两棵树,然后dp下去可取的蚂蚁数量区间,也就是每次转移是l[e[i].to]=l[u](d[u]-1),r[e[i].to]=(r[u]+1) ...

  5. 浅谈欧拉函数 By cellur925

    1.某神犇Blog 学了三遍的 欧拉函数φ--DEADFISH7 2.我要做一些补充o(* ̄▽ ̄*)o $φ(1)=1$: 公式有两种形式,一种有太多除法,实际可能会慢些.通用 对于任意$n$> ...

  6. Java自定义方法转换前端提交的json字符串为JsonObject对象

    前端提交json字符串格式数据,Java后端通过自定义方法接收json字符串数据并转换为JsonObject对象,代码如下放到RequestData.Java类中: public static JSO ...

  7. CSS3向上移动的效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Caffe实战二(手写体识别例程:CPU、GPU、cuDNN速度对比)

    上一篇文章成功在CPU模式下编译了Caffe,接下来需要运行一个例程来直观的了解Caffe的作用.(参考:<深度学习 21天实战Caffe>第6天 运行手写体数字识别例程) 编译步骤: C ...

  9. 位运算 UEST 84 Binary Operations

    题目传送门 题意:所有连续的子序列的三种位运算计算后的值的和的期望分别是多少 分析:因为所有连续子序列的组数有n * (n + 1) / 2种,所以要将他们分类降低复杂度,以ai为结尾的分成一组,至于 ...

  10. oracle 10g standby 设置

    ##########sample alter system set log_archive_dest_1 = 'LOCATION=USE_DB_RECOVERY_FILE_DEST' scope=bo ...