• Добро пожаловать на Quest3D - Русскоязычное сообщество.
 

Новости:

Форум Quest3D восстановлен!

Главное меню

Подсчёт объёма 3д-модели

Автор →|๖ۣۜDen|←, 07 апреля 2013, 20:36:16

« назад - далее »

→|๖ۣۜDen|←

Задача - посчитать объём любой 3д-модели. В идеале было бы конечно считать объём именно видимой части модели, но, похоже второму без первого не бывать.
Задача конечно не из простых, но всё же, занимался ли кто-нибудь подобным?
Не тупи, Denil!ツ Quest3D v4.3.2

Egor

Если в максе, то задача не сложная, ну а если в q3d...

→|๖ۣۜDen|←

Чтож, оказалось всё гораздо сложнее и универсального решения, по всей вероятности, добиться довольно затратное дело, но, всё же примерная стратегия для расчёта объёма следующая:

Прежде всего нам необходимо определить какая у нас модель: выпуклая или вогнутая.

Если выпуклая, то всё просто, и объём находится как сумма всех объёмов тетраэдров, в основании которых находятся треугольники модели, образующие тремя вершинами однозначную плоскость, и вершиной в некоторой произвольной точке внутри модели.

Если вогнутая, то модель необходимо сначала разбивать на части (convex/non-convex). Для статических моделей можно написать плагин под макс или майку.

Имея выпуклую модель, найти объём каждой пирамиды не составит труда. Необходимо будет только знать координаты 4-ёх вершин, которые при смешанном произведении векторов образуют объём параллелепипеда, полученный на основе координат трёх векторов. Для того, чтобы найти искомый объём нашего тетраэдра полученную величину следует разделить на +/- 6. Это и будет объём одной пирамиды.
Перебрав все вершины нашей модели получим объём всей модели.
Не тупи, Denil!ツ Quest3D v4.3.2

Corpic

А если сечь плоскостью, определить площадь в плоскости сечения, затем проинтегрировать?

Sqwer

Корпик верно говорит.

Для использования 3Д принтеров используют схожий алгоритм.
В сети есть множество опенсорсных проектов 3Д принтерев.