在得到最优的内核之后,我们还需要有两个子步骤来产生最终的分解结果,一个是在内核上的分解,另一个则是在残留外壳上进行的分解。对于内核,我们贪婪式地在其内部排列大尺寸的通用模块,这些大尺寸的通用模块可以是预先制造的获得的(打印或者注模成形),也可以使用小尺寸通用模块来预先组装获得。通过这种方式,我们可以用更少的通用模块数来快速组装内核。
对于残留外壳部分,我们使用腐论游金字塔分解来将其分解成金字塔块。简化的金字塔分解仅使用内核上的(延长)直边来作为金字塔块的底面进行分解,而不是任意地进行金字塔分解。在实际实现中,我们首先找到所有前面所述的可用作金字塔底面的(延长)直边来作为切割线,还有额外的在135度情况下垂直于金字塔底面的切割线。然后我们执行这些切割操作,来对残留外壳进行一个过度分割。这样我们就得到了许多残留碎片,然后通过选择产生最小支撑材料的切割线,我们把这些残留碎片合并成一系列残留块。这个过程需要在每个内核角上(在三维情况下,为内核边)进行二元切割决策。
显著区域
第一,用户还可以在输入模型上标记显著性较强的区域,元切割决策则可以避免在这些区域上进行切割操作。这个过程可能会增大但是V和W将不受影响。当我们对三维模型使用双向深度剥离方法来生成深度图层时,需要考虑十三个视角方向,并且需要扩展半边数据结构至三维网格上的半面数据结构以存储预计算的支撑材料体积。
第三,在三维情况下,内核表面的拓扑结构上远比二维的情况复杂,因此为了计算寻找切割平面,我们为内核建立了一个图数据结构:每个节点代表一个面片,每个边代表面片之间的连接关系。我们就可以找到拓扑邻近的成对切割面来建立组合切割。
第四,在三维情况中估计州的时候,可能的金字塔底面包括了内核表面上的面片,和从内核上的由两个面皮形成的锐边而衍生来的切割面。两个切割面所组合而来的组合切割可能无法满足三维情况下的需求。因此我们需要引入由三个切割面组合而成的组合切割来移除凹陷处的部件。最后,二元切割决策是在内核的边上进行的而不是在角上进行。