Я пытаюсь изобразить элегантный способ отображения определенного количества элементов в сетке. У меня есть ощущение, что ответ частично зависит от модуля, но это немного сложнее, чем это. Я знаю, как размещать элементы в сетке на основе заданного количества столбцов. Примерно так:
for (var j=0;j<numFiles;j++){
clip.x = clip.width * (j % cols);
clip.y = clip.width * int(j / cols);
}
но я хочу настроить все так, чтобы при наличии только одного элемента (j = 0) изображение покрывало всю доступную область (stage.Width и stage.Height или, для простоты, 1000px и 500px). Если имеется 2 элемента, то должно быть 2 столбца, причем изображения занимают половину ширины сцены и всю высоту (500x500), 3 элемента - 3 столбца (300x500), 4 элемента - 2 столбца и 2 строки ( 500x250) и т. Д., Сохраняя сбалансированный макет сетки, но уменьшая размеры элементов и увеличивая количество строк некоторым логическим и сбалансированным образом.
Должен быть способ сделать это математически, но я не сталкивался с этим и, кажется, не могу понять это самостоятельно. Если у кого-то есть идеи, я бы с удовольствием их услышал. Я делаю это во Flash AS3, но любой пример будет полезен.