Предположим, что у вас есть трехмерный объект, представленный как 3d-сетка в некотором распространенном формате. Как бы вы разработали алгоритм для декомпозиции сетки в одну или несколько 2d 'сетей? - то есть двумерное представление, которое можно вырезать и свернуть для создания исходного 3D-объекта.
Помимо всего прочего, алгоритм должен учитывать:
- Несколько возможных разложений для любого заданного объекта
- Обработка фитинга сетки в холсты фиксированного размера (листы бумаги).
- Признание того, что две панели в сети будут перекрываться (и, таким образом, недействительны).
- Разбиение сетки на несколько сетей, если они не могут быть представлены как один, из-за ограничений на перекрытие или размер страницы.
- Создание вкладок в соответствующих местах для прикрепления смежных граней.
Очевидным вырожденным случаем является просто создание одной сетки на лице с вкладками на половине ребер. Это не идеально, очевидно: идеальный случай представляет собой единую непрерывную сеть. Реальность для сложных фигур, вероятно, будет где-то посередине.
Я понимаю, что поиск оптимальной сети (наименьшее количество сетей/наименьших страниц), вероятно, является дорогостоящим вычислительным, но достаточной эвристикой для поиска сетей достаточно.