几何表示方法
1 显示表示
理解为能够通过参数映射的方法来定义几何形状,可以很轻易的采样到所有的点,但是给予你任意一点却很难判断它与曲面的关系,如下图所示:
通过将(u,v)代入映射关系中能够快速获得(x,y,z)
1.1 显示几何(Explicit Representations)
显式几何有两种方式:
- 一种为直接定义三角形信息
- 另一种为通过参数映射的方法定义表面
显式几何 | |
---|---|
Triangle meshes | 三角形网格表示模型(最常用) |
Bezier curves / surfaces | 贝塞尔曲线/曲面 |
subdivision surfaces | 细分曲面 |
NURBS | 非均匀有理 B 样条 |
point cloud | 点云描述几何物体,当点足够,能够较好表示几何 |
…… | …… |
2 隐式表示
理解为很容易判断空间中的点与模型内外的关系,但是难以用函数的形式说明这个几何的具体形状。所谓隐式曲面指的是并不会告诉你任何点的信息,只会告诉你该曲面上所有点满足的关系。
例如:式子
x
2
+
y
2
+
z
2
=
1
x^{2}+y^{2}+z^{2}=1
x2+y2+z2=1
以上式子能够看出来该方程是一个三维球体,一般我们将隐式方程写成
f
(
x
,
y
,
z
)
=
0
f(x, y, z)=0
f(x,y,z)=0,即上述方程为
f
(
x
,
y
,
z
)
=
x
2
+
y
2
+
z
2
−
1
f(x, y, z)=x^{2}+y^{2}+z^{2}-1
f(x,y,z)=x2+y2+z2−1。
但如果给出的式子为
f
(
x
,
y
,
z
)
=
(
2
−
x
2
+
y
2
)
2
+
z
2
−
1
f(x, y, z)=\left(2-\sqrt{x^{2}+y^{2}}\right)^{2}+z^{2}-1
f(x,y,z)=(2−x2+y2)2+z2−1相信很多人都不知道这个几何模型应该是一个圆环的形状。
但是如果表示为点与曲面的位置关系这个方法则变得非常容易,只要将目标点代入方程中就可以轻易算出。
隐式几何 | |
---|---|
Algebraic Surfaces | 通过代数表达式描述的几何曲面 |
Constructive Solid Geometry(CSG) | 各种不同的几何做布尔运算,如并,交,差 |
Signed Distance Function | 符号距离函数(场函数的融合) |
水平集(Level Set) | 对空间用一个个格子去近似一个函数 |
分型几何 | 分型几何是指许许多多自相似的形体最终所组成的几何形状 |
…… | …… |