2010-06-08 18 views
10

Mi chiedevo se qualcuno sa di algoritmi adatti per assemblare N numero di rettangoli di dimensioni sconosciute nel più piccolo rettangolo di contenimento possibile.Unione di rettangoli insieme in modo ottimale

Per ottimale intendo con la riduzione della quantità di spazio bianco rimasto nel rettangolo contenente risultante.

Mi piacerebbe usare questo per generare sprite css da una serie di immagini. risposta

Molte grazie,

Ian

+0

Perché la forma contenente devono anche essere quadrato? Perché non può essere rettangolare ma non quadrato? –

+0

Buon punto. Intendevo rettangolo. Io modifico – madcapnmckay

+5

http://www.google.com/search?q=rectangle+packing+algorithm – Dan

risposta

2

Penso che quello che descrivi sia una variante del problema del "contenitore bidimensionale dell'imballaggio". L'unica differenza è che hai gli oggetti e stai cercando di trovare il rettangolo più piccolo.

This l'articolo di sondaggio è un buon inizio.

+0

Ora è un collegamento morto. –

1

L'unico modo per garantire e la soluzione ottimale è la forza bruta della risposta. Questo diventa rapidamente ingestibile per i personal computer quando si dispone di più rettangoli e consente la possibilità di rotazione.

Wikipedia ha un buon articolo su problema di imballaggio http://en.wikipedia.org/wiki/Packing_problem