Здравствуйте, Ev., Вы писали:
Ev.>Подскажите пожалуйста, методику, либо алгоритм, разрезание произвольной объемной невыпуклой фигуры плоскостью.
Ev.>Например, у нас есть трехмерное тело (в идеале куб) описанное 8 точками x,y,z. Нам необходимо отсечь от него часть произвольной плоскостью ( и так несколько раз
).
Ev.>После этого, посчитать объем получившейся фигуры.
Ev.>
Можно попробовать применить метод Монте-Карло. Для этого потребуется решить задачу принадлежности точки телу.
Навскидку, предлагаю решать задачу принадлежности точки телу так:
выпустить луч из точки (например, перпендикуляр к Ox). Пробежав по всем плоскостям граней определить пересекает ли луч эту плоскость.
Если пересекает, то спроектировать грань и луч на Ox — свели задачу к принадлежности точке фигуре. Посчитать таким образом количество пересекаемых граней — если это количество нечетное, то точка внутри тела, если четное, то вне тела.
Учтем, что тело рассекали плоскостями. Для этого для каждой точки попавшей внутрь тела вычислим с какой стороны она находиться от каждой плоскости (подставить координаты в каноническое уравнение) — это однозначно задает какому "куску" тела она принадлежит.