1) Сделать фотографии размерами NxN, 2NxN и Nx2N.
2) Сделать поле из XxY клеток.
3) Взять K случайных горизонтальных (размером 2NxN) фотографий и
разложить их по случайным клеткам из пункта 2 (заняв по две на фотку).
4) Повторить пункт 3 для вертикальных фотографий.
5) В незаполненные клетки положить картинки размером NxN.

http://shitov.ru/pix/

Ровно то же можно сделать и для фотографий других размеров, заранее
определившись с соотношением сторон.



2012/4/30 Михаил Монашёв <[email protected]>:
> Здравствуйте, Alexandr.
>
> Задача  следующая: есть прямоугольник Х на Y и есть Z фотографий. Надо
> весь прямоугольник покрыть не пересекающими фотографиями насколько это
> возможно. Пример того, что должно получиться:
> http://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Rigas_mozaika.png/422px-Rigas_mozaika.png
>
> Подскажите пожалуйста алгоритм выбора места и размера фотографий.
>
> --
> С уважением,
>  Михаил                          mailto:[email protected]
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org



-- 
Andrew Shitov
______________________________________________________________________
[email protected] | http://shitov.ru
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить