曲面曲线综述
Contents
对于简单的mesh来说,我们当然不需要如此兴师动众的进行讨论。但是对于大多数的mesh来说,由于其表面是曲面,所以才需要我们进行讨论。
一.可能遇到的问题
- 最简单的,分段线性逼近需要很多块才能看起来good(逼真、光滑等)。
- 单个曲面点的集合将占用大量的内存存储。
二.解决方案
- 使用曲面坐标的高阶公式
- 上面的不行,那将曲面细分为可由简单公式表示的小块 问题是很明显的,首先是不够精确,第二是比较难实现 ##表示方法 有两种表示方法,第一是参数式的,第二是隐式的
- 参数式: $$( x , y , z ) = ( f ( u , v ) , g ( u , v ) , h ( u , v ) ) (x,y,z)=(f(u,v), g(u,v), h(u,v)) (x, y,z) =(f (u,v) ,g(u, v),h (u,v) )$$
- 例如平面、球体、圆柱体、圆环、扫掠曲面等。
- 参数式可以通过控制u,v来控制精度。
- 非常适合生成多边形网格。
- 可以用于复杂的求交问题,如光线和平面,点是否在范围内。
- 隐式的: $$F ( x , y , z ) = 0 F(x,y,z) = 0 F(x ,y,z)= 0$$
- 例如平面,球体,圆柱体,二次曲面,圆环.
- 并不能进行uv控制
- 可用于相交,变形
曲线曲面表示方法在 CAGD 中扮演着重要的角色,特别是自由曲线曲面。CAD 中由已知曲线或者曲面的数学方程生成的曲线曲面称为规则曲线曲面,常用隐函数或者二次方程的显示来表示,但是在汽车、轮船、飞机、模具等产品的设计中,存在大量不能用二次曲面描述的曲线和曲面,这类曲线曲面称为自由曲线和自由曲面,它们是计算机辅助几何设计研究的主要几何图形。
之后,我们将曲线相关的内容:
- Bilinear Patch
- Coons patch
- Cubic Bezier Surfaces
- B-spline patches
- B-Spline Surfaces
- NURBS曲面