计算建设性立体几何的体积
Compute the volume of a constructive solid geometry
我有一个构造性的椭圆体实体几何体,可以切割一个立方体。我需要计算多孔立方体的体积。我该怎么做?
总有愚蠢的近似解决方案。为此,您只需要一个判断函数是否一个点在椭圆体内。
保留一个魔方
- 维度(可能只有一次在class之外,外维度)
- 填充:状态:空、填充、混合
- 如果混合8个子Cube-s
- 有最小块大小
然后用椭圆体填充会分裂立方体,其中混合立方体(有点填充)需要分裂以进行更精确的计算。
算法本身可能会有所不同。重新缩放到 (0, 0, 0) - (2”, 2”, 2”) 可能会有用,因为这些块对 space.
进行了 ²log 除法
在这个计算结束时,有一个近似值,甚至知道误差范围(填充总和+混合总和的一半)。
一种方法是从整个多维数据集递归,检查与 8 个子多维数据集的重叠:
- 当一个立方体的所有 8 个角都在椭圆体内时,它就被填充了,您不需要进一步递归到最小块大小。
- 当所有8个角都在外面时并且椭圆体的中心不在里面,它是空的,递归结束。
我有一个构造性的椭圆体实体几何体,可以切割一个立方体。我需要计算多孔立方体的体积。我该怎么做?
总有愚蠢的近似解决方案。为此,您只需要一个判断函数是否一个点在椭圆体内。
保留一个魔方
- 维度(可能只有一次在class之外,外维度)
- 填充:状态:空、填充、混合
- 如果混合8个子Cube-s
- 有最小块大小
然后用椭圆体填充会分裂立方体,其中混合立方体(有点填充)需要分裂以进行更精确的计算。
算法本身可能会有所不同。重新缩放到 (0, 0, 0) - (2”, 2”, 2”) 可能会有用,因为这些块对 space.
进行了 ²log 除法在这个计算结束时,有一个近似值,甚至知道误差范围(填充总和+混合总和的一半)。
一种方法是从整个多维数据集递归,检查与 8 个子多维数据集的重叠:
- 当一个立方体的所有 8 个角都在椭圆体内时,它就被填充了,您不需要进一步递归到最小块大小。
- 当所有8个角都在外面时并且椭圆体的中心不在里面,它是空的,递归结束。