【计算机图形学】几何

我们可以用许多方法来表示几何
隐式的
•代数曲面
•水平集
•距离函数
•……
显式的
•点云
•多边形网格
•细分,NURBS
•……
选择最适合当前的任务/几何类型方式即可

1.两种表示方式的优缺点

隐式显式
优点可以方便判断一个点在该几何的外面里面还是在几何上可以方便找出该几何上每一个点画出几何图形
缺点不方便找出该几何上每一个点画出几何图形不方便判断一个点在该几何的外面里面还是在几何上

例子:
在这里插入图片描述
看这个隐式的函数表达很难知道它的几何形状,而显式的表示则可以直接弄出几何形状。
在这里插入图片描述

2.代数曲面(隐式)(Implicit)

2.1构造立体几何(隐式)
通过布尔运算结合隐式几何
在这里插入图片描述
2.2距离函数(隐性)
取代布尔值,逐渐混合表面一起使用
距离函数:给出从任何地方到对象的最小距离(可以是带符号的距离)
一个例子:混合(线性交互)一个移动的边界
我们想混合这两个边界
在这里插入图片描述
假如我们直接混合,就会是这样的:

在这里插入图片描述
中间会出现灰的,显然不对。
如果我们用距离函数:
在这里插入图片描述边界为0。
把那张图结合。
在这里插入图片描述

再反回去,就直接成功了。
这就是距离函数的作用。

有一个和距离函数差不多的概念叫水平集
在这里插入图片描述也是取0那条线为边界值

3.显式(Explicit)

3.1点云
最简单的表示:点列表(x,y,z)
很容易表示任何几何图形
适用于大型数据集(>>1点/像素)
经常转换成多边形网格
在采样不足的地区很难提取
3.2多边形网格(显式)
存储顶点和多边形(通常是三角形或四边形)
更容易处理/模拟,自适应采样
更复杂的数据结构
也许是图形中最常见的表示方式
在这里插入图片描述

4.曲线(Curves)

⻉塞尔曲线(Bézier Curves)

由几个顶点决定一条曲线(一般为4个)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Bézier曲线的性质
插入端点
•cubic Bézier:b(0) = b0; b(1) = b3
与末端段相切
•立方的例子:在这里插入图片描述

仿射变换性质
•通过变换控制点来变换曲线
凸包性质
•曲线在控制点的凸包内
凸包:紫色这条线
在这里插入图片描述

分段贝塞尔曲线

http://math.hws.edu/eck/cs424/notes2013/canvas/bezier.html
一般为四个控制一条,然后连起来。
连续性问题,一般考虑C0连续和C1连续
C0连续:段点值相等
在这里插入图片描述C1连续:连线方向相同且大小相等(导数一样)
在这里插入图片描述

其他类型的样条曲线
b样条
-基样条的缩写
-需要比Bezier曲线更多的信息
-满足Bézier曲线的所有重要属性(例如:超集)

贝塞尔曲面

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.网格操作:几何处理

•网格细分
在这里插入图片描述

•网格简化
在这里插入图片描述

•网格正规化
在这里插入图片描述

网格细分

loop细分 (loop是人名!!)
在这里插入图片描述
点更新:
在这里插入图片描述
在这里插入图片描述
u大概是对外面的点的信任度。。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Mesh Simplification

主要是采用边塌缩
在这里插入图片描述
通过二次误差进行简化
迭代坍缩边缘
哪边?用二次误差度量来分配分数
•到表面的近似距离为到包含三角形的平面的距离之和
•迭代折叠分数最小的边(用优先队列)

待续…

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值