Bézier surface(贝塞尔曲面)
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(贝塞尔曲面)的更多相关文章
- NeHe OpenGL教程 第二十八课:贝塞尔曲面
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 数学图形之贝塞尔(Bézier)曲面
前面章节中讲了贝塞尔(Bézier)曲线,而贝塞尔曲面是对其多一个维度的扩展.其公式依然是曲线的公式: . 而之所以由曲线变成曲面,是将顶点横向连了再纵向连. 很多计算机图形学的教程都会有贝塞尔曲面的 ...
- OpenGL超级宝典笔记——贝塞尔曲线和曲面(转)
http://my.oschina.net/sweetdark/blog/183721 参数方程表现形式 在中学的时候,我们都学习过直线的参数方程:y = kx + b;其中k表示斜率,b表示截距(即 ...
- Android 自定义View高级特效,神奇的贝塞尔曲线
效果图 效果图中我们实现了一个简单的随手指滑动的二阶贝塞尔曲线,还有一个复杂点的,穿越所有已知点的贝塞尔曲线.学会使用贝塞尔曲线后可以实现例如QQ红点滑动删除啦,360动态球啦,bulabulabul ...
- 贝塞尔曲线:原理、自定义贝塞尔曲线View、使用!!!
一.原理 转自:http://www.2cto.com/kf/201401/275838.html Android动画学习Demo(3) 沿着贝塞尔曲线移动的Property Animation Pr ...
- DirectX11 With Windows SDK--33 曲面细分阶段(Tessellation)
前言 曲面细分是Direct3D 11带来的其中一项重要的新功能.它引入了两个可编程着色器阶段以及一个固定的镶嵌处理过程.简单来说,曲面细分技术可以将几何体细分为更小的三角形,并以某种方式把这些新生成 ...
- 【Notes_8】现代图形学入门——几何(基本表示方法、曲线与曲面)
几何 几何表示 隐式表示 不给出点的坐标,给数学表达式 优点 可以很容易找到点与几何之间的关系 缺点 找某特定的点很难 更多的隐式表示方法 Constructive Solid Geometry .D ...
- canvas贝塞尔曲线
贝塞尔曲线 Bézier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线. 曲线定义:起始点.终止点.控制点.通过调整控制点,贝塞尔曲线的形状会发生变化. 1962年,法国数学家Pierr ...
- Visualize Surface by Delaunay Triangulator
Visualize Surface by Delaunay Triangulator eryar@163.com Abstract. Delaunay Triangulation is the cor ...
随机推荐
- 【转】java对象——new对象的理解
学了好长时间的java对于java中的对象一直没有理清楚,今天楼主对java中的对象进行了整理,希望对大家有帮助. 理解和使用java中的对象,我们首先了解一下构造方法与对象的创建. 类是面向对象语 ...
- 任务29:自己动手构建RequestDelegate管道
cmd创建一个控制台应用程序 dotnet new console --name MyPipeline 用VSCode打开这个项目 新建类RequestDelegate.cs的类文件复制Program ...
- cclfow_小流程设计
官网演示地址:http://demo.ccflow.org/ 流程的主要需求: 新建流程 登陆系统后台进行设置流程:鼠标右键流程树 选择新建子级类别 输入子级类别名称:流程演示,点击确定即可 点击流程 ...
- 与adb相关的问题,比如掉线问题、Android Studio 提示Session 'app':Error Installing APK、找不到设备
这一篇帖子 会写的比较简单 不过相信大家也可能遇到这些问题 为了怕自己忘记 记录下来 顺便也和大家一起分享 描述:在一些机型上安装软件 提示卸载原先的软件 但是又安装不上新软件 DELETE ...
- python 高阶函数一 概念
一.2个概念: 1.变量可以指向函数本身 >>> abs <built-in function abs> >>> f = abs >>> ...
- bzoj 4316: 小C的独立集【仙人掌dp】
参考:https://www.cnblogs.com/clrs97/p/7518696.html 其实和圆方树没什么关系 设f[i][j][k]为i点选/不选,这个环的底选不选 这个底的定义是设u为这 ...
- noi,ac第五场部分题解 By cellur925
题目质量还是不错的,只是我太菜了== 传送门 T1:序列计数(count) 题目描述 长度为n+1的序列A,其中的每个数都是不大于n的正整数,且n以内每个正整数至少出现一次. 对于每一个正整数k=1, ...
- SpringBoot自定义参数解析器
一.背景 平常经常用 @RequestParam注解来获取参数,然后想到我能不能写个自己注解获取请求的ip地址呢?就像这样 @IP String ip 二.分析 于是开始分析 @RequestPara ...
- python之yaml模块和ddt模块
aml文件是专门用来写配置文件的语言,非常简洁和强大,远比json格式方便. 在PC中新建一个yml/yaml为为缩略名的文件,输入信息见下图 新建一个py文件处理yml文件,直接处理成字典格式 缩进 ...
- Queue Sequence HDU - 4441
码力不行啊... 错误记录: 171行后面对find2的使用错误,原来写的是p=find2(rt,p1),然后再加上一句能过样例但很假的特判 事实上,现在是要寻找最大的j,使得d2[1..j-1]=p ...