0%

几何学其二

几何学2

点云

某个坐标系下的点的数据集——XYZ、颜色、分类值......

 

Object File

定义空间中点、法线、纹理坐标的文件

piMbSQf.png

  • v——表示每一次加一个点
  • vn——六种不同的法线
  • vt——十二个纹理坐标
  • f——点与点之间的连接关系(哪三个点能形成三角形)

 

Curves(曲线)

不会出现突转的曲线——常用于摄像机移动或特殊模型

 

贝塞尔曲线——用一系列控制点来定义曲线

piMq8Hg.png

例如:p0p1定义起点方向,p2p3定义终点方向

 

de Casteljau算法——给点一系列任意多个的控制点画出曲线

首先试想一下计算机会如何处理画线,比如用一个t当作实时时间,那么计算机会沿着t的变化而一点一点地将点给找出来。de Casteljau算法的作用就是从任意一个t找出点的算法。

piMqR81.png

假设t是位于0~1之间大概三分之一的位置,那么b01就是b0与b1之间三分之一位置,b11同理,然后b02就是b01与b11之间三分之一的位置,这个b02点就是要找的点

 

piMqXxP.png

四个点的例子

经过推导后适合于计算机理解的式子:

piMLGM6.png

piMLlGR.png

伯恩斯坦多项式:

piMLUde.png

 

Summary贝塞尔

  • 曲线必须过起点和终点
  • 起始位置方向和结束方向和第一段线段和最后一段线段方向一致
  • 贝塞尔曲线做仿射变换可以直接对控制点做,然后重新画出来——投影不行
  • 画出的曲线一定在几个控制点的凸包内

 

逐段贝塞尔曲线

多个控制点的情况下的贝塞尔曲线效果并不好,于是分几段来定义贝塞尔曲线

 

piMLLo4.png

这个场景属性吗?其实就是画图里面的钢笔工具,就是利用贝塞尔曲线的原理,只不过是将四个点中的中间两个点中的连线给省去了,这种方式在常规贝塞尔曲线中也得到广泛应用

 

逐段连续贝塞尔曲线

第一段的终值点与第二段的起点是一个点——C0连续

如果在这一个点中的切线也同时连续,则称作C1连续

也有更多的C2等等...

 

样条

 

曲面

 

贝塞尔曲面

用贝塞尔曲线延申出贝塞尔曲面

方式是在两个方向上同时运用贝塞尔曲线——类似于之前的双线性插值

所以两个控制时间就称之为U,V

 

几何处理

  • 网格细分
  • 网格精简
  • 网格正规化