将不规则圆柱体细分为等体积片段

时间:2013-03-27 14:58:04

标签: algorithm geometry cgal cylindrical

我想知道是否有人有任何想法如何解决这个问题。

我在3D中有一个“不规则”(意思是直径沿着长度不是恒定的)圆柱形物体。我想将它细分为具有相同体积的较小片段(长度方式)。这样的任何算法?

由于

1 个答案:

答案 0 :(得分:1)

这只是告诉你如何整合基于三角形网格的圆柱集成。

设Z是圆柱体中所有顶点的纵向坐标。排序Z并删除重复项。

现在,在每个z [i]和z [i + 1]之间,圆柱体交叉区域均匀地增大或减小。因此,这两个横截面之间的体积是=(A [i] + A [i + 1])*(z [i + 1] - z [i]))其中A [i]是横截面的长度Z [i]中。

因此,总体积= \ sum(A [i] + A [i + 1])*(z [i + 1] - z [i]))i = 1 ..(n-1)< / p>

令V [i]为z [i]和z [i + 1]之间的体积。设2W为气缸的总容积。

如果U> V [i],则初始化U = W并且对于每个i减去U乘以V [i]。否则:z * = Z [i] +(V [i] -U)*(z [i + 1] -z [i])/ V [i]是中点。