Алгоритм размещения изображений разных размеров в виде сетки - PullRequest
2 голосов
/ 24 июня 2011

Я пытаюсь расположить изображения в сетке, причем некоторые из них имеют размеры в 4 раза больше. Я уверен, что это хорошо известный алгоритм компоновки, но я не знаю, как он называется.

Эффект, который я ищу, похож на скриншот, показанный ниже. Кто-нибудь может указать мне правильное направление?

ОБНОВЛЕНО Чтобы быть более конкретным, давайте ограничимся случаем, когда в примере показаны только два размера. Может быть бесконечное количество элементов с установленным полем между ними. Надеюсь, что все проясняет.

enter image description here

Ответы [ 2 ]

2 голосов
/ 02 июля 2011

Существует хорошо известный алгоритм компоновки, называемый treemapping , который, возможно, слишком общий для вашей конкретной проблемы, так как некоторые изображения имеют размер 4x, но все же может быть применим, особенно если вы решите, что хотитеиметь произвольные размеры.

Существует несколько различных алгоритмов прямоугольной древовидной карты, любой из которых можно использовать для визуализации фотографий. Вот хороший пример , который использует алгоритм полосы, чтобы выложить фотографии с каждым размером, пропорциональным оценке фотографии.

0 голосов
/ 02 июля 2011

Эта проблема может быть решена с помощью тепловой карты или карты дерева.Тепловые карты часто используют кривые заполнения пространства.Тепловая карта уменьшает сложность 2d до сложности 1d.Тепловая карта выглядит как квадри.Вы хотите найти блог Ника по пространственному индексу с квадратом кривой Гильберта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...