Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объем фигуры, построенной по точкам 
:(
    Опции темы
Dementor
Дата 15.12.2012, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 60
Регистрация: 9.7.2007

Репутация: нет
Всего: нет



Всем доброго времени суток!

Опять обращаюсь за помощью.

Имеется массив точек с координатами X,Y,Z. Мне необходимо посчитать объем, который занимают эти точки. При этом желательно, чтобы учитывалось, что фигура, которую образуют эти точки, может быть с дыркой.

Как это реализовать мне вообще не понятно... У меня есть конечно идеи типа построения между каждыми тремя точками треугольников, стороны которых не могут быть больше заданной величины (для устранения вероятности построения треугольника в дырке фигуры), потом что-то посчитать от этих треугольников, но короче дальше мысль у меня не развивается пока. 
Подскажите хотя бы куда копать...
PM MAIL   Вверх
jorka
Дата 15.12.2012, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 25.10.2008

Репутация: нет
Всего: нет



Вот изображение как строится триангуляция на плоскости, примерно так же считается площадь любой выпуклой фигуры с ровными краями.
user posted image

Тебе нужно тоже самое сделать, но в объёме.
С дыркой конечно прийдётся помучаться. Можно попробовать после построения фигуры, если она с дыркой, то разрезать её на две (или больше) так, что бы линия разреза шла через дыру, тогда вместо поиска объёма одной сложной фигуры (с дыркой) надо будет найти объём нескольких простых фигур без дыр. Лучше конечно свести всё к выпуклым фигурам.
PM MAIL   Вверх
Dementor
Дата 15.12.2012, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 60
Регистрация: 9.7.2007

Репутация: нет
Всего: нет



Вот и я думал по поводу триангуляции. И как я понимаю другого выхода нет.
Буду делать триангуляцией. Спасибо большое за ответ!
PM MAIL   Вверх
Akina
Дата 16.12.2012, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20580
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 20
Всего: 454



Цитата(Dementor @  15.12.2012,  23:54 Найти цитируемый пост)
Имеется массив точек с координатами X,Y,Z. Мне необходимо посчитать объем, который занимают эти точки. При этом желательно, чтобы учитывалось, что фигура, которую образуют эти точки, может быть с дыркой.

Любое количество точек более 4 задаёт тело в пространстве НЕОДНОЗНАЧНО. 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
_Y_
Дата 16.12.2012, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1651
Регистрация: 27.11.2006

Репутация: 8
Всего: 34



Думаю, что наличие дырки делает задачу нерешаемой. Триангуляция позволит вычислить объем выпуклой фигуры (при условии, что точки могут находится не только на поверхности, но и в объеме). А вот допустимость любых "впуклостей",  а уж, тем более, дырок...

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

Это сообщение отредактировал(а) _Y_ - 16.12.2012, 20:19


--------------------
Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:)
PM MAIL WWW   Вверх
Prospekt
Дата 16.12.2012, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 30.5.2012

Репутация: нет
Всего: 1



Akina прав, нужно указывать какие точки соеденены ребрами для однозначности. Плоский случай предложенный jorka как бы однозначен потому что двухмерные точки соединятся в порядке следования в массиве. т.е. указывается их порядок.
Для наглядности можно взять квадрат ABCD, его площадь = 1. А теперь из этих же точек составим фигуру ABDC (песочные часы) площадь которой будет в 2 раза меньше.

Это сообщение отредактировал(а) Prospekt - 16.12.2012, 22:24
PM MAIL   Вверх
Pavia
Дата 16.12.2012, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 418
Регистрация: 6.12.2008

Репутация: 11
Всего: 12



Точки должны быть связанные тогда объем можно вычислить.  

PM MAIL   Вверх
Silent
Дата 17.12.2012, 07:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 252
Регистрация: 3.10.2006

Репутация: 1
Всего: 9



Ссылка раз (но без дырки), ссылка два (произвольное тело). Ищите в алгоритмах для нефтегазовой промышленности
PM MAIL   Вверх
mrgloom
Дата 17.12.2012, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 829
Регистрация: 8.6.2011

Репутация: нет
Всего: нет



задача помоему называется построение минимальной выпуклой оболочки.
http://habrahabr.ru/post/144921/
http://algolist.manual.ru/maths/geom/convhull/


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0843 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.