我想创建一个TreeMap,使用图片填充treemap矩形。我可以假设所有图片都具有相同的宽度和高度(即长宽比)。因此,我需要一种treemapping算法来创建具有给定比率的矩形,我是否能够将图片放置在此处(如果需要,还可以缩放图片)。
TreeMap
treemap
treemapping
你能推荐一个吗?
通常,不可能解决-Albin Sunnanbo通过反例提供了证明。假设边界矩形具有与目标矩形相同的长宽比,则可以通过将边界矩形缩放为正方形,在其上运行平方的树图 [pdf]算法,然后进行缩小来获得足够好的解决方案到一个矩形。由于方形树图不能保证完美的正方形,因此最终的矩形将不会具有理想的长宽比,但实际上,它可能不会使图片失真太多。
一个很好的改进是对您的图片进行接缝雕刻,以使它们正确地适合稍稍长宽比的矩形;例如,如果您使用它来组装拼贴,则应该从视觉上获得令人愉悦的结果。