我想知道是否有人知道任何適合於將N個未知大小的矩形組合到最小的可能包含矩形中的算法。以最佳方式將矩形組合在一起
通過最優化我的意思是減少所產生的包含矩形中留下的空白量。
我想用它來從一系列圖像中產生css精靈。
非常感謝,
伊恩
我想知道是否有人知道任何適合於將N個未知大小的矩形組合到最小的可能包含矩形中的算法。以最佳方式將矩形組合在一起
通過最優化我的意思是減少所產生的包含矩形中留下的空白量。
我想用它來從一系列圖像中產生css精靈。
非常感謝,
伊恩
通過packing images into square texture和Simon的答案,我得到了這個鏈接http://code.activestate.com/recipes/442299/
我沒有檢查的配方,但它似乎允許使用非方形容器。
我認爲你所描述的是「二維裝箱」問題的一個變種。唯一的區別是你有這些項目,並試圖找到最小的矩形。
This調查文章是一個好的開始。
現在這是一個死鏈接。 – 2013-06-20 05:39:20
保證和最佳解決方案的唯一方法是蠻力的答案。當你有幾個矩形時,這對個人計算機來說很快變得難以管理,並且允許旋轉的可能性。
這裏是一個快速的填充算法的一個很好的說明了一篇好文章 - http://www.codeproject.com/KB/web-image/rectanglepacker.aspx
爲什麼會含有形狀也必須是方形的?爲什麼它不是長方形而是方形? – 2010-06-08 15:19:45
好點。我的意思是矩形。我會編輯。 – madcapnmckay 2010-06-08 15:20:20
http://www.google.com/search?q=rectangle+packing+algorithm – Dan 2010-06-08 15:27:22