Просмотр полной версии : Алгоритмег
Возникла сложная задачка.
Имеетса скажем квадрат 500х500 и много мелких квадратов и прямоугольников. Как програмно их разложить по квадрату как можно компактнее (не переворачивая как тетрис).
или хотяб узнать куда копать
aspartic
13.07.2011, 11:54
этим занимаются САПР-ы. алгоритмы разводки печатных плат, расстановка компонентов(микропроцессоров, реле, кондючков и т.д.) на определенной отмеченной области( в данном случае твой квадрат) --- это в "какую сторону копать".
а какие алгоритмы - тут хз
У меня програмка загружает (и может выгружать) всякие иконки, кнопачки контролы. Хранить каждую в отдельной картинке накладно. Хочу отмапить их на одно изображение и блитить с него но как их там располагать эфективно програмно невтыкаю.
Если это слишком муторно то подумаю другую реализацию
goodvin1709
13.07.2011, 14:22
ну так подели свой квадрат(500х500) на 100 мелких квадратов ровных между собой и в каждый отдельный рисунок.
Задачу еще раз перечитай. Мелкие картинки могуть быть разных размеров.
mira, пусть сначала программа рассортирует примерно одинаковые по размеру картинки на несколько массивов. Затем располагает на конечном холсте их полосами. Сначала все самые крупные, потом мелче и т.д. Заполнение будет использовано не на 100% но для твоей цели этого вполне достаточно. Попутно к изображению программа составит таблицу например со следующими полями:
imageID, holstLeft, holstTop, imageWidth, imageHeight
Это позволит быстро искать и вырезать нужно изображение с холста.
vBulletin® v3.6.11, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot