Алексей пишет:тут кто-то был готов платить за программу
Был готов, не за программу, за алгоритм, 3.5 года назад. Сейчас для меня задача не актуальна.
Если интересно, вот вкратце примерное (без нюансов) ТЗ на программу:
1. Быстрое размещение набора плоских деталей, различной геометрической формы, в области заданной площади, с обеспечением высокого процента заполнения и других заданных условий.
2. Параметры раскраиваемого материала: задание количества и размеров раскраиваемых полос, прямоугольные полосы, полосы произвольной формы с расположением зажимов и технологических отверстий, минимальный зазор между деталями на листе, задание раскроя на одном листе деталей нескольких типов, учет анизотропных свойств материала.
3. Задание и управление следующими параметрами деталей при раскрое: количество деталей каждого типа, приоритет деталей, возможность свободного или дискретного поворота и зеркального переворота детали, расположение мелких деталей внутри вырезов больших.
4. Возможность ручного редактирования полученных результатов, с сохранением ручных результатов при следующих итерациях.
5. Геометрия контура деталей может включать любые кривые: линии, дуги, окружности, конические сечения, сплайны и т.д.
6. Технологический расчет: задание плотности и толщины материала; расчет площади, объема и веса раскраиваемого материала, общего веса деталей, процента использования материала, веса каждой детали с отверстиями и без; получение подробного отчета стандартной и настраиваемой формы.
7. Передача геометрии деталей и сохранение полученных листов с раскроенными деталями для подготовки управляющих программ для электроэрозионных, лазерных, плазменных и других станков и машин с ЧПУ.
Повторюсь, мне сейчас это уже не нужно.