forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Математика (http://forum.boolean.name/forumdisplay.php?f=85)
-   -   Объём in 3д <?> как (http://forum.boolean.name/showthread.php?t=5942)

zheland 22.04.2008 17:49

Объём in 3д <?> как
 
2d или 3d: 3d(пространство)
Дано: куча точек(например 100)
Известны: x, y, z каждой точки(координаты)
Найти: V(объём) фигуры построенной по этим точкам
Ответить: формулой(пример: a+b*c...)
Ответ:(жду...)

tormoz 22.04.2008 19:00

Ответ: Объём in 3д <?> как
 
Фигасе, задачка...
Ммм.
Интегралы помогут в 2д
(это по сути площадь фигуры, описываемой формулой линии и ограниченной пределами и осью координат)

Или разбить кривые на отрезки и находить площади трапеций
а вот в 3д - не знаю (когда это учили у меня любовь была :))))

HolyDel 22.04.2008 19:27

Ответ: Объём in 3д <?> как
 
Интегралы помогут в 2д только если граница задана аналитически.
и в 3д тоже.
вооще фигура выпуклая?
если так, то алгоритм на вскидку:
1. берем три точки образующие одну грань.
2. от этих трех точек строим (n-3) тетраэдров, вершины которых - это все остальные точки,
3.очевидно - что объекм фигуры будет равен сумме объемов этих тетраэдров. еще раз напоминаю - фигура должна быть выпуклой.

хотя нет)) так тоже не выйдет.

zheland 22.04.2008 20:17

Ответ: Объём in 3д <?> как
 
А можно чутьть-чутьть попонятнее...
(тригонометрия не начиналась: 7 класс:) )

ABTOMAT 22.04.2008 20:20

Ответ: Объём in 3д <?> как
 
Цитата:

(тригонометрия не начиналась: 7 класс :))
Никогда не жди что тебя чему-то научат - учись этому сам :lol:

zheland 22.04.2008 20:22

Ответ: Объём in 3д <?> как
 
да я стараюсь!
Синусы, косинусы, тангенсы - сам изучил!

Tadeus 22.04.2008 20:26

Ответ: Объём in 3д <?> как
 
Цитата:

Сообщение от drunnik (Сообщение 79905)
да я стараюсь!
Синусы, косинусы, тангенсы - сам изучил!

Я тоже. Примерно :-)

jimon 22.04.2008 22:11

Ответ: Объём in 3д <?> как
 
drunnik
а тебе это зачем ?

zheland 22.04.2008 22:26

Ответ: Объём in 3д <?> как
 
свой 3d модуль делаю на Blitz Max *посмотри мою подпись*
хотел-бы туда и физику запихнуть;)

FrankH 22.04.2008 22:46

Ответ: Объём in 3д <?> как
 
Смотри институццкие учебники, где-то в районе тройных интергалов )) а если чесно, то поидее достаточно формулы подсчета обьема для неравностороннего многогранника, и это попроще должно быть.. вобщем учебники и учебники и еще раз учебники..

alcoSHoLiK 23.04.2008 12:45

Ответ: Объём in 3д <?> как
 
По заданному набору точек можно построить огромное количество фигур. Уточни формулировку задачи.

AnyWay 23.04.2008 17:22

Re: Объём in 3д <?> как
 
Объем фигуры ограниченной точками равен нулю. Совокупность точек не может ограничивать объем, объем ограничивает совокупность плоскостей.
Цитата:

Сообщение от drunnik (Сообщение 79899)
2d или 3d: 3d(пространство)
Ответить: формулой(пример: a+b*c...)
Ответ:(жду...)

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

AnyWay 24.04.2008 12:28

Re: Объём in 3д <?> как
 
Алгоритм примерно такой:
  1. Обнуляется переменная объема V
  2. Модель копируется во временный буфер
  3. Ищется полигон (плоскость) модели, относительно которого все остальные точки лежат с одной стороны
  4. Ищется полигон имеющий с выбранным общую сторону
  5. Считается объем фигуры образованной четырьмя точками и добавляется к общему объему
  6. Использованные два полигона удаляются из модели. Если в результате этого образовались точки не принадлежащая ни одному другому полигону они удаляется. Если удаляется одна точка, то из оставшихся трех точек создается новый полигон. Если ни одной точки не удаляется, то достраивается два новых полигона не равных удаленным. Если удаляются две или более точек, то новых полигонов не создается.
  7. Если модель не до конца разрушена переход к пункту 3.
Для подсчета объема фигуры из 4 точек по их координатам формула есть, т.к. фигура всегда выпуклая. Таким образом, когда вся модель будет разрушена, будет подсчитан её общий объем.

zheland 24.04.2008 18:11

Ответ: Объём in 3д <?> как
 
А если фигура не
Цитата:

образованной четырьмя точками
, а образована например уже сразу 10 точками ?

moka 24.04.2008 18:30

Ответ: Объём in 3д <?> как
 
drunnik, гаф, иди в институт и долби голову профессорам :)
Для 2Д, я бы разбил всё на треугольники (нада сам алгоритм написать), не совсем сложно, к примеру берём произвольную точку, далее, смотрим левую присоединённую отрезком и правую, если между этими точками не проходит линия, тогда один треугольник есть, далее незабываем помечать вершины полностью просчитанными, чтобы потом проверить все ли вершины уже просчитаны. При создании виртуального треугольника, незабываем создовать виртуальную линию меж 2 прилегающих вершин, чтобы её включать в проверку на перемечения тоже, это чтобы не произошло налиганий треугольников.
Таким образом перелистываешь все вершины, и творишь с ними подобное, и не забывай, виртуальные линии - тоже уже могу связывать с вершиной другую точку, к которой они проведены. Таким алгоритмом вся Любой формы фигура, с n колличеством вершин поделится на треугольники - а дальше считай их площади, и сумируй. :)


Часовой пояс GMT +4, время: 18:40.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot