这个问题有些复杂,主要考虑如下几个问题:
1、球面离散化
球面可以用球坐标网格(即四边形网格)绘制,也可以用三角形网格绘制,当然还可以用混合网格(比如四边形混合三角形,或者足球那样用五边形和六边形混合,只不过足球上是用全等的多边形,条件更苛刻)。下面将会发现,网格划分方式直接影响到分割过程和最后的结果。
2. 不规则曲线的细节
不规则曲线是由一个个连续的离散点构成。在分割之前,我们应该留意一下这些点的位置细节,因为它对整个问题至关重要。
首先,球面本身是一个数学上的解析(光滑)概念,而用网格描述的球面只是一种离散近似(当网格无穷密集就能逼近理想球面)。所以楼主的问题其实有两种解释:
第一种是理想球面上有一条不规则曲线(当然每个点都是精确位于理想球面上),求以该封闭曲线为边界所分割开来的两个曲面。
第二种就有所不同了,如果不规则曲线的点只是落在在网格化的离散球面上(当然,这个离散球面楼主必须事先给定),这时候就是计算几何的问题了,即离散几何曲面与曲线的布尔操作。关于布尔操作问题,本身是一个计算几何领域较难的热门问题,网上有不少国外论文讨论这个。
第一种问题比第二种问题稍微简单一点。第二种十分繁琐,这里大致说一下梗概:
1)找到曲线的关联面片
这里的关联面片指的是球面上那些与曲线相交的面片(面片是最小的网格单位),由于球面的离散化最方便的情况是三角形网格(当然四边形网格很方便化为三角形网格)。如果是三角形,那么关联面片就是一系列相邻的三角面片连接成的“条带“。那么,给定了曲线上的点和离散球面,如何找到关联面片?很简单,只需要搜索这些点&#x