假设您有一个三维对象,以某种常见文件格式表示为三维网格。你将如何设计一个算法来将网格分解成一个或多个2D网格 - 也就是说,可以剪切并折叠以创建原始3D对象的二维表示。将3d网格分解为2d网格
除其他事项外,算法将需要考虑:
- 多个可能的分解对于任何给定对象
- 处理网格装配到固定大小的画布(纸张)。
- 确认网络中的两个面板何时会重叠(因而无效)。
- 由于重叠或页面大小限制,如果不能将网格表示为单个网格,则会将网格划分为多个网格。
- 在适当的位置生成选项卡,用于附加相邻的面。
明显的退化情况是简单地创建一个网面,每边都有一个网点,边上有一半标签。显然这并不理想:理想的情况是一个连续的网络。复杂形状的现实可能在中间的某个地方。
我意识到寻找最佳网(最少的网/最少的网页)可能在计算上很昂贵,但寻找“足够好”的网络的一个很好的启发就足够了。
嗨!超级有趣的话题。几年后有什么进展? – nkint 2014-05-23 09:44:26
我只是偶然发现了这个问题,实际上有一个软件完全符合你的意思。怎么样,我不知道。但它是一个非常了不起的工具! http://www.tamasoft.co.jp/pepakura-en/ – 2017-11-09 00:29:16