Здравствуйте!
В какую сторону копать при решении этой задачи?
Немного ее поясню графически:
Задан некий прямоугольный участок размером N x M
Задана некая произвольная область, которую необходимо вписать в фигуру, которую можно собрать из вышеописанных прямоугольников. В простом случаем это может выглядеть вот так:
Прямоугольники необязательно должны быть вплотную друг другу. Можно (и даже лучше), чтобы они наезжали друг на друга.
Буду рад алгоритмам из старой доброй математики, полезным статьям, ссылкам на форум или псевдокод.
Update:
Также стоит задача оптимизации по уменьшению количества прямоугольников. Например, на картинке с примером левая часть фигуры покрыта четырьмя прямоугольниками. Если убрать верхний левый (или нижний левый) и сместить оставшиеся три прямоугольника вверх (вниз), то получиться покрыть область фигуры при помощи трех прямоугольников.
Update2:
Фигура, которую нужно вписать задается при помощи множества точек на плоскости. Например, приходит массив [{x1,y1}, {x2,y2},{x3,y3}] и поочередно их соединяя будет получен треугольник.
В простейшем случае точки будут соединены прямыми линиями. Соединение при помощи сплайнов пока не рассматривается.