【发布时间】:2011-05-29 04:14:23
【问题描述】:
我正在尝试将不同大小的长方体彼此相邻放置,以使它们之间的接触面积最大化。
以一种蛮力的方式,我正在为每个长方体寻找一个可能的位置,以便在不与任何其他长方体相交的空间中定位长方体。我使用 Java 3D 的 BoundingBox 类实现了这一点,在该类中可以检查给定框是否与给定的其他框集合相交。现在我有许多可能的位置,我需要从中选择与其他盒子接触面积最大的位置。
我的问题是我不知道如何有效地计算这个面积。一个小例子……
方框1:左下点x=0,y=0,z=0;右上角 x=10,y=10,z=10
方框2:左下点x=10,y=0,z=0;右上角x=15,y=5,z=5
框 3 的尺寸与框 1 相同,应以最大接触面积定位
在此示例中,框 3 的一侧与框 1 的右侧(框 2 所在的位置)之外的任何位置匹配的所有位置都是最优解。
如果有人有想法甚至解决方案,我会很高兴。如果免费图书馆不太大,我也很满意。
谢谢!
【问题讨论】: