Graphics 从三维三次bezier曲线路径创建曲面

Graphics 从三维三次bezier曲线路径创建曲面,graphics,3d,bezier,Graphics,3d,Bezier,我有一个3D的三次bezier曲线列表,这样这些曲线相互连接并闭合一个循环 我正在寻找一种从贝塞尔曲线创建曲面的方法。最后,我想对曲面进行三角剖分,并将其显示在图形应用程序中 是否有一种算法可用于曲面三次bezier线段的闭合路径?看起来您只知道曲面的部分细节(由bezier曲线给出),并且必须从中推断曲面。作为一个简单的例子,我想象了一组以圆心和半径为中心的三维圆,它们将被重建成一个球体 如果是这种情况,您可以使用。使用标高集,可以定义一组输入参数,这些参数定义外部因素对曲面施加的力以及曲面的

我有一个3D的三次bezier曲线列表,这样这些曲线相互连接并闭合一个循环

我正在寻找一种从贝塞尔曲线创建曲面的方法。最后,我想对曲面进行三角剖分,并将其显示在图形应用程序中


是否有一种算法可用于曲面三次bezier线段的闭合路径?

看起来您只知道曲面的部分细节(由bezier曲线给出),并且必须从中推断曲面。作为一个简单的例子,我想象了一组以圆心和半径为中心的三维圆,它们将被重建成一个球体

如果是这种情况,您可以使用。使用标高集,可以定义一组输入参数,这些参数定义外部因素对曲面施加的力以及曲面的“张力”

简而言之,水平集定义了曲面随时间扩展(或收缩)时的行为。当它扩展时,它试图保持它的
平滑度
,同时满足其他边界条件,如本例中的“粘住”圆。所以如果你想从一堆圆中得到一个球体,这些圆会产生很大的力,而表面也会非常紧张

具有级别集的开源实现

还提供了一系列方法,可以从点集和隐式曲面等对象生成曲面。您可以调整其中一个以供使用

如果你想自己实现一个,你可以研究他们使用的算法。我认为他们中至少有一个使用了这个算法