Как найти контур пересечения текущей рабочей плоскости с объемным каркасом на основе точек пересечения в C#?

Я решаю задачу построения линии пересечения рабочей плоскости с каркасом (на языке C#), который может быть как плоским, так и объёмным. Если каркас плоский, необходимо строить полилинию, а если объёмный — замкнутый контур пересечения.

На текущем этапе я могу вычислить все точки пересечения рабочей плоскости и треугольников каркаса. Однако возникает проблема: если объемный каркас сложной формы, и пересечение происходит лишь частично, необходимо правильно сгруппировать точки (или какой-либо другой подход), чтобы корректно построить линии или замкнутые контуры пересечения.

Например, в конкретной задаче должно быть построено два отдельных контура в местах пересечения рабочей плоскости и каркаса. Входные данные включают только треугольники каркаса и набор всех точек пересечения.

Какие алгоритмы или подходы можно использовать для решения подобной задачи?

введите сюда описание изображения


Ответы (0 шт):