Как найти объем фигуры по точкам

Часто в задачах школьного курса геометрии приходится решать задания, которые требуют использования комплексного подхода. Одной из таких задач является вычисление объема пирамиды по координатам вершин. Как решить эту геометрическую задачу – ответит приведенная ниже статья.

Что представляет собой пирамида?

Говоря простыми словами, под этой фигурой понимают пространственный объект, ограниченный треугольными сторонами и одной многоугольной гранью, которая называется основанием. Многоугольное основание может быть произвольным n-угольником на плоскости, например, правильным треугольником, параллелограммом и так далее.

Какую роль играет репродуктивная клетка животных и растений?Вам будет интересно:Какую роль играет репродуктивная клетка животных и растений?

Любая пирамида имеет n + 1 грань, 2 * n ребер и n + 1 вершину. Вершины фигуры не являются равноправными. Так, существует единственная вершина, которая не принадлежит основанию. Она называется главной. Расстояние от нее до плоскости основания – это высота фигуры.

Пирамиды могут быть наклонными, если высота пересекает основание не в его центре, или прямыми, когда высота с основанием пересекается в геометрическом центре последнего. Также фигуры могут быть неправильными и правильными. Пирамиды правильные состоят из равноугольного и равностороннего основания и нескольких равнобедренных треугольников, которые друг другу равны.

Прямая и наклонная пирамиды

Как рассчитывается объем пирамиды?

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

V = 1 / 3 * So * h.

Здесь So – это основания площадь, h – расстояние от главной вершины до основания, то есть высота пирамиды.

Таким образом, любая геометрическая задача на нахождение объема пирамиды сводится к расчету величин So и h.

Как найти объем пирамиды по координатам вершин: методика

Пирамида может быть представлена произвольным n-угольным основанием. Чтобы рассчитать его площадь, следует внимательно изучить условие задачи, в котором должно быть сказано, о каком типе n-угольника идет речь. Если это треугольник или параллелограмм, то расчет его площади по известным координатам очень прост: необходимо лишь найти векторное произведение соответствующих векторов сторон.

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

d = |(A * x1 + B * y1 + C * z1 + D)| / √(A2 + B2 + C2).

Здесь (x1; y1; z1) – координаты точки.

Расстояние от точки

Уравнение плоскости имеет вид:

A * x + B * y + C * z + D = 0.

Задача с треугольной пирамидой

Треугольная пирамида

Решим задачу на примере самой простой пирамиды – треугольной. Условие простое: ниже даны координаты вершин пирамиды, объем найти нужно для фигуры, которая на этих координатах построена:

  • A(1; 0; 3);
  • B(0; 2; -1);
  • C(3; 3; 1);
  • D(4; 3; 4).

Положим, что основание пирамиды является треугольником ABC. Найдем длины векторов AB¯ и AC¯:

AB¯ = (-1; 2; -4);

AC¯ = (2; 3; -2).

Векторное произведение AB¯ и AC¯ даст нам, с одной стороны, двойную площадь треугольника, то есть 2 * So, а с другой стороны, мы получим координаты нормального к плоскости вектора n¯, имеем:

n¯ = [AB¯ * AC¯] = (8; -10; -7).

Площадь треугольного основания равна полудлине вектора n¯, то есть:

So = √(82 + 102 + 72) / 2 = 7,3.

Прежде чем рассчитывать расстояние от D до плоскости ABC, необходимо записать уравнение плоскости. Три его коэффициента (A, B, C) мы уже знаем, они соответствуют координатам нормали n¯. Свободный член можно получить, подставив в уравнение координаты любой точки плоскости, например точки A, имеем:

D = -1 * (A * x1 + B * y1 + C * z1) = -1 * (8 * 1 + (-10) * 0 + (-7) * 3) = 13.

Тогда уравнение плоскости основания пирамиды принимает форму:

8 * x – 10 * y – 7 * z + 13 = 0.

Теперь применяем приведенную выше формулу для расчета расстояния от точки D(4; 3; 4) до найденной плоскости, получаем:

d = |(8 * 4 – 10 * 3 – 7 * 4 + 13)| / √(82 + 102 + 72) = 0,89.

Поскольку найденное значение расстояния d соответствует высоте пирамиды треугольной h, то можно воспользоваться формулой для объема фигуры:

V = 1 / 3 * So * h = 1 / 3 * 7,3 * 0,89 ≈ 2,166.

Полученное значение объема выражено в кубических единицах выбранной координатной системы.

Объем пирамиды

Если заданы координаты точек вершин пирамиды, то координаты векторов находятся по формуле:
X = xj – xi; Y = yj – yi; Z = zj – zi
где xi, yi, zi – координаты точки Аi; xj, yj, zj – координаты точки Аj;

Пример №2 . Найти объем пирамиды, отсекаемой от угла плоскостью, проходящей через точки А(0,2,-1), В(3,4,2), С(-3,0,4).

Онлайн калькулятор. Объем пирамиды (объем тетраэдра) построенной на векторах.

Этот онлайн калькулятор позволит вам очень просто найти объем пирамиды или объем тетраэдра построенных на векторах.

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

Калькулятор для вычисления объема пирамиды (объема тетраэдра) построенной на векторах

Выберите каким образом задается пирамида (тетраэдр):

Введите значения векторов: Введите координаты вершин пирамиды:

Инструкция использования калькулятора для вычисления объема пирамиды (объема тетраэдра) построенной на векторах

Ввод данных в калькулятор для вычисления объема пирамиды (объема тетраэдра) построенной на векторах

В онлайн калькулятор вводить можно числа или дроби. Более подробно читайте в правилах ввода чисел.

Дополнительные возможности калькулятора вычисления объема пирамиды (объема тетраэдра) построенной на векторах

  • Между полями для ввода можно перемещаться нажимая клавиши “влево” и “вправо” на клавиатуре.

Теория. Объем пирамиды (объем тетраэдра) построенной на векторах

Определение Объем пирамиды (объем тетраэдра) построенной на векторах a , b и c равен шестой части модуля смешанного произведения векторов составляющих пирамиду:

Вводить можно числа или дроби (-2.4, 5/7, . ). Более подробно читайте в правилах ввода чисел.

Любые нецензурные комментарии будут удалены, а их авторы занесены в черный список!

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

Как рассчитать объем пирамиды по координатам вершин? Методика и пример задачи

Часто в задачах школьного курса геометрии приходится решать задания, которые требуют использования комплексного подхода. Одной из таких задач является вычисление объема пирамиды по координатам вершин. Как решить эту геометрическую задачу – ответит приведенная ниже статья.

Что представляет собой пирамида?

Говоря простыми словами, под этой фигурой понимают пространственный объект, ограниченный треугольными сторонами и одной многоугольной гранью, которая называется основанием. Многоугольное основание может быть произвольным n-угольником на плоскости, например, правильным треугольником, параллелограммом и так далее.

Вам будет интересно: Какую роль играет репродуктивная клетка животных и растений?

Любая пирамида имеет n + 1 грань, 2 * n ребер и n + 1 вершину. Вершины фигуры не являются равноправными. Так, существует единственная вершина, которая не принадлежит основанию. Она называется главной. Расстояние от нее до плоскости основания – это высота фигуры.

Пирамиды могут быть наклонными, если высота пересекает основание не в его центре, или прямыми, когда высота с основанием пересекается в геометрическом центре последнего. Также фигуры могут быть неправильными и правильными. Пирамиды правильные состоят из равноугольного и равностороннего основания и нескольких равнобедренных треугольников, которые друг другу равны.

Как рассчитывается объем пирамиды?

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

Здесь So – это основания площадь, h – расстояние от главной вершины до основания, то есть высота пирамиды.

Таким образом, любая геометрическая задача на нахождение объема пирамиды сводится к расчету величин So и h.

Как найти объем пирамиды по координатам вершин: методика

Пирамида может быть представлена произвольным n-угольным основанием. Чтобы рассчитать его площадь, следует внимательно изучить условие задачи, в котором должно быть сказано, о каком типе n-угольника идет речь. Если это треугольник или параллелограмм, то расчет его площади по известным координатам очень прост: необходимо лишь найти векторное произведение соответствующих векторов сторон.

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

d = |(A * x1 + B * y1 + C * z1 + D)| / √(A2 + B2 + C2).

Здесь (x1; y1; z1) – координаты точки.

Уравнение плоскости имеет вид:

A * x + B * y + C * z + D = 0.

Задача с треугольной пирамидой

Решим задачу на примере самой простой пирамиды – треугольной. Условие простое: ниже даны координаты вершин пирамиды, объем найти нужно для фигуры, которая на этих координатах построена:

Положим, что основание пирамиды является треугольником ABC. Найдем длины векторов AB¯ и AC¯:

Векторное произведение AB¯ и AC¯ даст нам, с одной стороны, двойную площадь треугольника, то есть 2 * So, а с другой стороны, мы получим координаты нормального к плоскости вектора n¯, имеем:

n¯ = [AB¯ * AC¯] = (8; -10; -7).

Площадь треугольного основания равна полудлине вектора n¯, то есть:

So = √(82 + 102 + 72) / 2 = 7,3.

Прежде чем рассчитывать расстояние от D до плоскости ABC, необходимо записать уравнение плоскости. Три его коэффициента (A, B, C) мы уже знаем, они соответствуют координатам нормали n¯. Свободный член можно получить, подставив в уравнение координаты любой точки плоскости, например точки A, имеем:

D = -1 * (A * x1 + B * y1 + C * z1) = -1 * (8 * 1 + (-10) * 0 + (-7) * 3) = 13.

Тогда уравнение плоскости основания пирамиды принимает форму:

8 * x – 10 * y – 7 * z + 13 = 0.

Теперь применяем приведенную выше формулу для расчета расстояния от точки D(4; 3; 4) до найденной плоскости, получаем:

d = |(8 * 4 – 10 * 3 – 7 * 4 + 13)| / √(82 + 102 + 72) = 0,89.

Поскольку найденное значение расстояния d соответствует высоте пирамиды треугольной h, то можно воспользоваться формулой для объема фигуры:

V = 1 / 3 * So * h = 1 / 3 * 7,3 * 0,89 ≈ 2,166.

Полученное значение объема выражено в кубических единицах выбранной координатной системы.

[spoiler title=”источники:”]

http://ru.onlinemschool.com/math/assistance/vector/pyramid_volume/

http://1ku.ru/obrazovanie/51574-kak-rasschitat-obem-piramidy-po-koordinatam-vershin-metodika-i-primer-zadachi/

[/spoiler]

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

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

Пример 4.2. Пусть три вершины треугольника заданы своими координатами: A(4;4;4), B(1; 2; 3), C(3; —1;2).

Для определения площади ΔABC с помощью (4.10) найдем координаты векторов AB и AC: AB = {1 — 4; 2 — 4; 3 — 4} = { — 3; —2; —1}, —1 = {3 — 4; —1 — 4; 2 — 4} = { — 1; —5; —2}.

Затем по (3.2) вычислим их векторное произведение:

Формула векторное произведение

Модуль этого векторного произведения равен |AB×AC| = √((—1)2 + (—5)2 + 132) = √195, и следовательно, S ΔABC = |AB×AC|/2 = √195/2 #

Для вычисления объема параллелепипеда, заданного координатами своих вершин, нужно найти координаты трех векторов, соответствующих смежным ребрам, а затем вычислить модуль смешанного произведения этих векторов. Через смешанное произведение вычисляется и объем произвольной треугольной пирамиды SABC (см. пример 3.2), поскольку он равен 1/6 объема параллелепипеда, построенного на ребрах AB, AC и AS. Таким образом, объем этой пирамиды равен VSABC = |ABACAS|/6.

Пример 4.3. Найдем объем V пирамиды SABC, заданной координатами своих вершин: A(2; —1;1), B(5; 5; 4), C(3; 2; —1), S(4;1;3).

Используя (4.10), вычисляем координаты векторов, направленных по ребрам пирамиды: AB = {5 — 2; 5 — (—1);4 — 1} = {3; 6; 3}, AC = {3 — 2; 2 — (—1); —1 — 1} = {1;3; —2},= AS {4 — 2;1 — (—1); 3 — 1} = {2;2;2}, и определяем объем с помощью смешанного произведения найденных векторов:

Формула

План урока:

Вычисление объема тела с помощью интеграла

Вычисление объема тел вращения

Объем наклонной призмы

Объем пирамиды

Объем конуса

Объем шара

Шаровой сегмент

Площадь сферы

Вычисление объема тела с помощью интеграла

Пусть у нас есть произвольная фигура, расположенная между двумя параллельными плоскостями:

1 obem slozhnyh tel

Как найти ее объем? Поступим следующим образом. Проведем прямую, перпендикулярную этим плоскостям. Эта прямая будет осью координат х. Пусть одна из плоскостей пересекает эту ось в точке а, а другая – в точке b. Таким образом, на координатной прямой появляется отрезок [a; b]. Далее разобьем этот отрезок на n равных отрезков, длина каждого из них будет равна величина ∆х. Обозначим концы этих отрезков как х0, х1, х2…, хn, причем точке х0 будет совпадать с точкой а, а точка хn – с точкой b. Ниже показано такое построение для n = 10:

2 obem slozhnyh tel

Далее через полученные точки проведем сечения, параллельные двум плоскостям, ограничивающим фигуру. Площадь сечения, проходящую через точку с номером i, обозначим как S(xi). Эти плоскости рассекут тело на n других тел. Обозначим объем тела, заключенного между сечениями с площадями S(xi) и S(xi+1) как V(xi). Можно приближенно считать, что эти тела имеют форму прямых цилиндров (напомним, что в общем случае цилиндром необязательно считается фигура, основанием которой является круг, основание может иметь и любую другую форму). Высота всех этих цилиндров будет равна величине ∆х. Тогда объем V(xi) может быть приближенно рассчитан так:

3 obem slozhnyh tel

Общий же объем исследуемой фигуры будет суммой объемов этих прямых цилиндров:

4 obem slozhnyh tel

Здесь знак ∑ означает сумму i слагаемых, каждое из которых равно величине S(xi)•∆х. Ясно, что чем больше мы возьмем число n, тем точнее будет полученная нами формула. Поэтому будет увеличивать число n до бесконечности, тогда приближенная формула станет точной:

5 obem slozhnyh tel

В правой части стоит предел суммы бесконечного числа слагаемых. Мы уже сталкивались с такими пределами, когда изучали определенный интеграл в курсе алгебры. Так как х0 = a, а число хn-1 при бесконечном увеличении n приближается к числу хn, то есть к b, то можно записать следующее:

6 obem slozhnyh tel

Здесь S(x) – это некоторая функция, которая устанавливает зависимость между площадью сечения объемной фигуры и координатой х, указывающей расположение этого сечения. Данная формула позволяет вычислять объем с помощью интеграла.

7 obem slozhnyh tel

Итак, для вычисления объема тела необходимо:

1) выбрать в пространстве какую-то удобную ось координат Ох;

2) найти площадь произвольного сечения фигуры, проходящей перпендикулярно оси Ох через некоторую координату х;

3) найти значение чисел а и b – координат сечений, ограничивающих тело в пространстве;

4) выполнить интегрирование.

Понятно, что сразу понять, как используется эта формула, тяжело. Поэтому рассмотрим простой пример.

Задание. Фигура расположена в пространстве между двумя плоскостями, перпендикулярными оси Ох, причем координаты этих сечений равны 1 и 2. Каждое сечение фигуры с координатой х является квадратом, причем его сторона равна величине 1/х. Найдите объем тела.

8 obem slozhnyh tel

Решение. В данной задаче ось Ох уже проведена. Известны и числа а и b – это 1 и 2, ведь именно плоскости, проходящие через точки х =1 и х = 2, ограничивают исследуемое тело. Теперь найдем площадь произвольного сечения с координатой х. Так как оно является квадратом со стороной 1/х, то его площадь будет квадратом этой стороны:

9 obem slozhnyh tel

Вычисление объема тел вращения

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

10 obem slozhnyh tel

В задачах на вычисление объемов таких тел ось координат Ох уже задана естественным образом – это ось вращения тела. Ясно, что каждое сечение тела, перпендикулярное оси вращения, будет являться кругом.

Рассмотрим случай, когда вокруг оси Ох поворачивают график некоторой функции у = f(x), ограниченный прямыми х = а и у = b. Тогда получится тело, сечениями которого являются круги, причем их радиусы будут равны величине f(x). Напомним, что площадь круга вычисляют по формуле:

11 obem slozhnyh tel

11 2 esli telo vraschenija polucheno vrascheniem edited

Рассмотрим, как на практике используется эта формула.

Задание. Объемное тело получено вращением ветви параболы

12 obem slozhnyh tel

вокруг оси Ох. Оно ограничено плоскостями х = 0 и х = 4. Каков объем такой фигуры?

13 obem slozhnyh tel

Решение. Здесь пределами интегрирования, то есть числами а и b, будут 0 и 4. Используем формулу для тела вращения:

14 obem slozhnyh tel

Объем наклонной призмы

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

Пусть есть треугольная призма АВСА2В2С2. Проведем ось Ох так, чтобы точка О располагалась в плоскости АВС. Пусть Ох пересечет плоскость А2В2С2 в некоторой точке О2. Тогда отрезок ОО2 будет высотой призмы, ведь он окажется перпендикулярным к обоим основаниям.

15 obem slozhnyh tel

Обозначим длину высоты ОО2 буквой h. Далее докажем, что всякое сечение А1В1С1 призмы, перпендикулярное оси Ох, будет равно ∆АВС. Действительно, если АВС⊥ОО2 и А1В1С1⊥ОО2, то АВС||А1В1С1. Прямые АВ и А1В1 принадлежат одной грани АВВ2А1, но не пересекаются, ведь они находятся в параллельных плоскостях. Аналогично АС||А1С1 и ВС||В1С1. Теперь посмотрим на четырехугольник АВВ1А1. АВ||A1В1 и АА1||ВВ1. Тогда АВВ1А1 по определению является параллелограммом. Это означает, что отрезки АВ и А1В1 одинаковы. Аналогично доказывается, что одинаковы отрезки АС и А1С1, а также ВС и В1С1. Но тогда одинаковы и ∆АВС и ∆А1В1С1.

Итак, площади всех сечений одинаковы и равны площади основания призмы. Обозначим ее как S. Так как S не зависит от координаты, то интегрирование будет выглядеть так:

16 obem slozhnyh tel

Итак, объем треугольной наклонной призмы – это произведение площади ее основания на высоту. Теперь рассмотрим произвольную призму, в чьем основании находится n-угольник. Такой n-угольник можно разбить на треугольные призмы с общей высотой h и площадями оснований S1, S2, S3, …

17 obem slozhnyh tel

Тогда площадь S основания всей призмы будет суммой этих чисел:

18 obem slozhnyh tel

18 2 obem naklonnoj prizmy raven proizvedeniju edited

Задание. Основание призмы – это треугольник со сторонами 10, 10 и 12. Боковое ребро имеет длину 8 и образует с основанием угол в 60°. Вычислите объем призмы.

19 obem slozhnyh tel

Решение. Пусть в основании призмы АВСА1В1С1 лежит ∆АВС со сторонами АВ = 12 и АС = ВС = 10. Его площадь можно найти разными способами, но быстрее всего применить формулу Герона. Сначала найдем полупериметр ∆АВС:

20 obem slozhnyh tel

Далее надо найти высоту призмы. Опустим из точки В1 перпендикуляр В1О на плоскость АВС. Тогда в прямоугольном ∆ОВВ1 ∠В = 60° (по условию задачи и по определению угла между плоскостью и прямой). Зная длину бокового ребра ВВ1, найдем высоту ОВ1:

21 obem slozhnyh tel

Объем пирамиды

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

22 obem slozhnyh tel

Пусть ось Ох пересечет основание АВС в точке М. Тогда ОМ – это высота, чью длину мы обозначим как h.

Далее построим сечение А1В1С1, параллельное АВС. Это сечение пересечется с ОМ в точке ОМ1. Тогда ОМ1 – это координата х, характеризующая расположение сечения А1В1С1.

Осталось составить выражение для площади ∆А1В1С1. Так как АВ||A1B1, то ∠АВО и ∠А1В1О одинаковы как соответственные углы. Тогда у ∆АВО и ∆А1В1О есть два равных угла (ведь ∠АОВ у них общий), а потому эти треугольники подобны по первому признаку подобия. Это означает, что

23 obem slozhnyh tel

Надо как-то найти значение коэффициента k, который, очевидно, как-то зависит от переменной х. Рассмотрим теперь ∆ОМВ и ∆ОМ1В1. Они прямоугольные, ведь ОМ перпендикулярен плоскостям этих треугольников. Также у них есть общий угол ∠ОВМ. Значит, они подобны, и поэтому

24 obem slozhnyh tel

Итак, если пирамида имеет высоту h и площадь основания S, то объем пирамиды равен:

25 obem slozhnyh tel

Выведенная нами формула справедлива для треугольной пирамиды. Однако если в основании пирамиды лежит произвольный многоугольник, то, разбив этот многоугольник на треугольники, мы разобьем и пирамиду на несколько треугольных пирамид. У них будет общая высота h и площади оснований S1, S2, S3…, которые в сумме составляют площадь многоугольника S.

26 obem slozhnyh tel

Объем треугольных пирамид рассчитывается по выведенной нами формуле:

27 obem slozhnyh tel

27 2 obem piramidy raven odnoj treti ot proizvedenija edited

Задание. В основании пирамиды высотой 15 лежит квадрат со стороной 4. Вычислите ее объем.

Решение. Сначала находим площадь основания. Для этого надо сторону квадрата умножить саму на себя:

28 obem slozhnyh tel

Задание. В кубе АВСDA1В1С1D1 отмечены точки Е и F – середины ребер ВС и CD соответственно. Во сколько раз объем пирамиды С1EFC меньше объема куба?

29 obem slozhnyh tel

Решение. Обозначим длину ребра куба буквой а. Тогда его объем рассчитывается так:

30 obem slozhnyh tel

Задание. Отрезок MN перпендикулярен плоскости пятиугольника АВСDE. Точка K, принадлежащая этой плоскости, делит отрезок MN в отношении 2:1. Во сколько раз объем пирамиды MABCDE больше объема пирамиды NABCDE?

31 obem slozhnyh tel

Решение. Запишем формулы для объемов этих пирамид. При этом учтем, что MK – высота для MABCDE, а NK – это высота для NABCDE.

32 obem slozhnyh tel

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

33 obem slozhnyh tel

Снова рассмотрим пирамиду ОАВС, через которую проведено сечение А1В1С1, параллельное основанию.

34 obem slozhnyh tel

Обозначим площадь нижнего основания пирамиды как S2, а площадь верхнего основания – как S1. Далее высоту усеченной пирамиды (отрезок ММ1) обозначим как h. Мы уже выяснили ранее, что основания АВС и А1В1С1 – это подобные треугольники, причем коэффициент их подобия k равен отношению высот ОМ и ОМ1. Тогда можно записать:

35 obem slozhnyh tel

Далее используем основное свойство пропорции:

36 obem slozhnyh tel

Далее числитель дроби мы раскладываем на множители, используя формулу разности кубов:

37 obem slozhnyh tel

37 2 obem usechennoj piramidy edited

Задание. Основаниями усеченной пирамиды являются квадраты со сторонами 9 см и 5 см, а высота пирамиды составляет 6 см. Найдите ее объем.

Сначала вычислим площади оснований:

38 obem slozhnyh tel

Объем конуса

Рассмотрим конус с высотой h и радиусом основания R. Совместим начало координат с вершиной конуса и направим ось Ох в сторону основания конуса. Тогда она пересечет основание в какой-то точке М c координатой h. Далее через точку М1 на оси Ох, имеющей координату х, проведем сечение, перпендикулярное оси Ох. Это сечение будет окружностью.

39 obem slozhnyh tel

Также построим образующую ОА, которая будет проходить через сечение в точке А1. Теперь сравним ∆ОАМ и ∆ОА1М1. Они прямоугольные, и у них есть общий угол ∠АОМ. Это значит, что они подобны, и поэтому справедливо отношение:

40 obem slozhnyh tel

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

41 obem slozhnyh tel

41 2 obem konusa mozhet byt vychislen po formulam edited

Задание. Радиус конуса – 8 см, а его высота составляет 12 см. Определите его объем.

Решение. Здесь надо просто применить выведенную формулу:

42 obem slozhnyh tel

Задание. В сосуде, имеющем форму перевернутого конуса, вода доходит до уровня, соответствующего 2/3 высоты сосуда. При этом ее объем составляет 192 мл. Каков объем всего сосуда?

43 obem slozhnyh tel

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

44 obem slozhnyh tel

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

45 obem slozhnyh tel

Задание. Вычислите объем усеченного конуса с высотой 9 и радиусами оснований 7 и 4.

Решение. Сначала находим площади оснований:

46 obem slozhnyh tel

Объем шара

Пришло время разобраться и с таким телом, как шар. Здесь можно использовать тот же метод интегрирования, что и в случае с конусом и пирамидой. Но можно поступить и иначе – использовать выведенную нами для тел вращения формулу

47 obem slozhnyh tel

Шар как раз является телом вращения. Он получается при вращении полуокружности вокруг диаметра, на который эта дуга опирается.

48 obem slozhnyh tel

Напомним известное нам уравнение окружности, чей центр совпадает с началом координат:

49 obem slozhnyh tel

Здесь надо уточнить, что если у получившейся функции впереди записан знак «+», то ее график соответствует полуокружности, находящейся над осью Ох. Если же используется знак «–», то получается уже нижняя полуокружность, расположенная под осью Ох:

50 obem slozhnyh tel

В принципе мы можем поворачивать любую из этих полуокружностей вокруг Ох, но мы выберем верхнюю полуокружность. Заметим, что эта дуга начинается в точке х = – R и заканчивается в точке х = R, эти числа будут пределами интегрирования. Тогда объем шара равен:

51 obem slozhnyh tel

51 2 obem shara vychisljaetsja edited

Задание. Найдите объем шара с радиусом 6.

Решение. Подставляем радиус из условия в формулу:

52 obem slozhnyh tel

Задание. В цилиндр вписан шар. Во сколько раз объем цилиндра больше объема такого шара?

53 obem slozhnyh tel

Решение. Ясно, что так как шар вписан в цилиндр, то радиусы этих тел одинаковы. Обозначим этот радиус как R. Также ясно, что раз шар касается оснований цилиндра, то расстояние между ними (то есть высота цилиндра) равно двум радиусам шара:

54 obem slozhnyh tel

Шаровой сегмент

Когда плоскость проходит через шар, она рассекает его на две фигуры, которые именуются шаровым сегментом. Если из центра шара О провести радиус ОА длиной R в направлении плоскости сечения, который перпендикулярен этой плоскости, то он пересечет ее какой-то точке В. Длину отрезка АВ называют высотой шарового сегмента и обозначают буквой h:

55 obem slozhnyh tel

Ясно, что при этом отрезок ОВ – это расстояние от секущей плоскости (или от основания сегмента) до центра шара, причем этот отрезок имеет длину R –h.

Можно считать, что шаровой сегмент, как и шар, получается при вращении дуги окружности вокруг оси Ох. Однако если сам шар при этом ограничен плоскостями x = R и х = – R, то сегмент ограничен другими плоскостями: х = R и х = R – h. Это значит, что его объем можно вычислить с помощью интеграла также, как и объем шара, отличаться будет лишь нижний предел интегрирования:

56 obem slozhnyh tel

56 2 obem sharovogo segmenta edited

Заметим, что шар можно рассматривать как шаровой сегмент, чья высота вдвое больше его радиуса. И действительно, если в выведенную формулу мы подставим значение h = 2R, то получим уже известную нам формулу объема шара.

Задание. Найдите объем шарового сегмента высотой 6, если он отсечен от шара радиусом 15.

Решение. Используем выведенную формулу:

57 obem slozhnyh tel

Задание. Диаметр шара разделили на три равных отрезка. Через концы этих отрезков провели секущие плоскости, перпендикулярные диаметру. Чему равен объем тела, заключенного между этими двумя плоскостями (оно называется шаровым слоем), если радиус шара обозначен буквой R?

58 obem slozhnyh tel

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

59 obem slozhnyh tel

Площадь сферы

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

60 obem slozhnyh tel

Впишем сферу в многогранник с n гранями. Ясно, что расстояние от граней этого многогранника до центра сферы равно радиусы сферы R. Далее построим пирамиды, чьи вершины находятся в центре сферы, а основания – это грани многогранника. Заметим, что такие пирамиды будут иметь одинаковые высоты длиной R.

Обозначим площади граней многогранника как S1, S2, S3,…Sn. Тогда объемы пирамид, построенных на этих гранях, вычисляются так:

61 obem slozhnyh tel

Заметим, что в сумме эти объемы дают объем всего многогранника, а сумма площадей S1, S2, S3,…Sn – это площадь всей его поверхности. Тогда можно записать:

62 obem slozhnyh tel

62 2 obem mnogogrannika v kotoryj vpisana sfera edited

Теперь начнем неограниченно уменьшать размеры граней многогранника. Тогда число n будет расти, объем многогранника будет приближаться к объему шара, а площадь многогранника – к площади к сфере. Тогда и доказанное равенство можно будет записать так:

63 obem slozhnyh tel

Задание. Необходимо изготовить закрытый сосуд с заранее заданным объемом V. Предлагается два варианта формы этого сосуда – шар и куб. Так как поверхность сосуда покрывается очень дорогой краской, то необходимо выбрать вариант с меньшей площадью поверхности. Какую форму для сосуда следует выбрать?

Решение. Обозначим радиус шара как R, а ребро куба как а. Тогда можно записать:

64 obem slozhnyh tel

Теперь надо выяснить, какое из полученных значений больше. Для этого поделим площадь куба на площадь сферы. Если получится число, большее единицы, то площадь куба больше:

65 obem slozhnyh tel

Получившееся число больше единицы, ведь 6 больше числа π, равного 3,1415926… Значит, и площадь куба больше, а потому необходимо выбрать сосуд, имеющий форму шара.

Ответ: шар.

Примечание. Более сложными математическими методами можно доказать, что если второй сосуд имеет не форму куба, а вообще любую форму, отличную от шара, то всё равно следует выбирать именно сосуд в форме шара. То есть из всех поверхностей, ограничивающих определенный объем, именно сфера имеет наименьшую площадь. Этот факт имеет и физическое следствие – капли дождя и мыльные пузыри стремятся принять форму шара, также как и любые жидкости, находящиеся в невесомости.

Итак, мы научились вычислять объемы таких тел, как конус, пирамида, шар, призма. Также помощью интегрирования можно находить объемы и ещё более сложных тел, если мы можем составить функцию, описывающую площадь их сечения.

Алгоритмы поиска объема и центра масс многогранника

Время на прочтение
6 мин

Количество просмотров 4.1K

Наверное, все знают этот алгоритм, но от меня «власти скрывали». Нашел его словесное описание на третьей странице поисковика в архиве автопереводов англоязычного форума. Мне кажется, его подробное описание (и с кодом) достойно хабростатьи.

Итак, например вам надо генерировать мобов для игрушки и где-то в процессе отсеивать тех, кто не стоит на ногах. Для этого нужно найти центр масс моба (а это почти то же самое, что найти его объем) и убедиться, что он находится где-то над ногами моба.

Моб — это многогранник, для простоты считаем, что многогранник состоит только из треугольников (в алгоритме внутри сидит формула площади Гаусса, так что можно расширить его для любого многогранника, но зачем…). Кроме того, многогранник должен не иметь самопересечений и ограничивать замкнутый объем, как и положено приличным многогранникам.


(ну типа такого)

Маленький UPD, поясняющий, почему на КДПВ правый моб Не Ок, а левый Ок:
Правая картинка не Ок потому что моб завалится вперед, т.к. его центр масс вынесен за площадь опоры. Площадь опоры стоящего на поверхности многоугольника определяется как минимальный многоугольник, внутри которого окажутся все точки, находящиеся на поверхности. В левом случае площадь опоры сдвинута под центр масс и больше (т.к. динозаврские лапы больше), а на правой картинке сама площадь меньше и ближе к хвосту.
Соотношение опорной площади и центра масс будет примерно такое:

Сразу начну с кода поиска объема (Python, входные данные — список точек и матрица переходов):

немного кода

def RecSetDirsTriangles(para, Connects, TR):
    """рекурсивная функция, которая принимает на вход ребро и по нему выбирает направление треугольника"""
    #1.найти треугольник включающий пару, убедиться, что такого еще нет
    for i in range(0,len(Connects)):
        if i != para[0] and i != para[1] and Connects[i][para[0]] and Connects[i][para[1]]: #вот этот треугольник!
            fl = 1
            for T in TR:
                if i in T and para[1] in T and para[0] in T:
                    fl = 0 #этот треугольник уже обработан
                    break
            if fl: #найден треугольник!
                TR += [(para[1],para[0],i)]
                Recc((para[0], i) , Connects, TR)
                Recc((i, para[1]) , Connects, TR)

def FindV(dots, Connects):
    """ищем объем. Входные данные - dots список вершин многогранника вида [x, y, z], Connects - квадратная матрица, Connects[i][j]=1 если есть связь между вершинами i, j, иначе =0 """
    #1. сделать треугольники с упорядоченными вершинами
    TR = []
    for i in range(1,len(Connects)):#выбираем первый треугольник с нулевой точкой и еще каким-то
        if Connects[i][0]:
            for j in range(i+1, len(Connects)):
                if Connects[0][j] and Connects[i][j]:
                    TR += [(0,i,j)]
                    break
            RecSetDirsTriangles((0,i),Connects, TR)
            break
    print("найдено треугольников: ", len(TR))
    
    #2. посчитать площадь базы и объем усеченной призмы
    V = 0
    for T in TR:
        '''Гаус рулит:           x1y2                         x2y3                         x3y1                           x2y1                        x3y2                        x1y3'''
        S = 0.5 * (dots[T[0]][0]*dots[T[1]][1] + dots[T[1]][0]*dots[T[2]][1] + dots[T[2]][0]*dots[T[0]][1] - dots[T[1]][0]*dots[T[0]][1] - dots[T[2]][0]*dots[T[1]][1] - dots[T[0]][0]*dots[T[2]][1])
        #S может быть + или - в зависимости от того, как направлен треугольник
        V += S*(dots[T[0]][2] + dots[T[1]][2] + dots[T[2]][2])/3 #объем усеченной призмы считается просто...

    return math.fabs(V)

Суть алгоритма — считаем объемы фигур, которые образуют «падающие» на плоскость xy грани многогранника. Для этого надо знать площадь проекции треугольника и знак, с которым надо суммировать объем фигуры (усеченнной призмы). На самом деле, если заранее упорядочить треугольники, и объем и знак сводятся к одному вычислению.

Поэтому первым делом рекурсивная функция собирает треугольники из входных данных. Собирает таким образом, чтобы при взгляде «снаружи» на многогранник, направления обхода треугольников были одинаковыми (в идеале против часовой стрелки; если взять направления по часовой стрелке, то результат получится правильным, но отрицательным — поэтому в ретурн отдается модуль объема).

Добиться этого очень просто — берем какой-то треугольник (точки a1, a2, a3), ищем его соседей и перечисляем две совпавшие вершины в обратном порядке (например, так: a2, a1, b1).
Получается что-то вроде этого:

Теперь, если мы спроецируем такой треугольник на плоскость xy, то порядок обхода для проекции «верхнего» треугольника будет совпадать с изначально выбранным, а порядок обхода для проекци «нижнего» треугольника поменяет свое направление. Как следствие, поменяет знак и площадь этого треугольника, вычисленная по формуле Гаусса. Здесь «нижний» треугольник — понятие условное — имеется ввиду, что объем непосредственно под ним не входит в объем многогранника. «Нижний» треугольник у невыпуклого многогранника может быть выше «верхнего».

После этих предварительных действий, чтобы вычислить полный объем многогранника, надо просто сложить (с учетом знака, который получается «сам собой») все объемы усеченных призм, собранных из граней и проекций этих граней на плоскость xy. А объемы призм считаются как произведение площади (по Гауссу, со знаком) и среднего арифметического z-координат вершин треугольника.

Если многогранник пересекается плоскостью xy, то при вычислении объема, все знаки скомпенсируют друг друга и результат остается правильным (надо только брать высоты призмы без модуля).


(как-то так выглядит «верхняя» усеченная призма)

С поиском центра масс все приблизительно также. Аналогично надо найти центры масс для каждой усеченной призмы и просуммировать покоординатно, умножая на объем призмы (предполагается, что масса распределена равномерно по объему и можно одно заменить другим). Чтобы найти центр масс усеченной призмы, придется посчитать центры масс двух тетраэдеров (+1 функция) и одной обычной призмы. Алгоритм так же «не портится», если многогранник пересекает плоскость xy (а здесь могла бы быть репродукция Магритта).


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

Код, который считает то и то:

чуть больше кода

def RecSetDirsTriangles(para, Connects, TR):
    #1.найти треугольник включающий пару, убедиться, что такого еще нет
    for i in range(0,len(Connects)):
        if i != para[0] and i != para[1] and Connects[i][para[0]] and Connects[i][para[1]]: #вот этот треугольник!
            fl = 1
            for T in TR:
                if i in T and para[1] in T and para[0] in T:
                    fl = 0
                    break
            if fl: #найден треугольник!
                TR += [(para[1],para[0],i)]
                Recc((para[0], i) , Connects, TR)
                Recc((i, para[1]) , Connects, TR)
    
def TetrV(mas):#dot1, dot2, dot3, dot4):
    """объем тетраэдера по вершинам"""
    M = np.zeros((3,3),float)
    for i in range(1,4):
        for j in range(0,3):
            M[i-1][j] = mas[i][j] - mas[0][j]
    #print(M)
    return math.fabs(np.linalg.det(M)/6)

def FindVandCM(dots, Connects):
    """ищем объем и центр масс многогранника"""
    #1. сделать треугольники с упорядоченными вершинами
    TR = []
    for i in range(1,len(Connects)): #выбираем первый треугольник с нулевой точкой и еще каким-то
        if Connects[i][0]:
            for j in range(i+1, len(Connects)):
                if Connects[0][j] and Connects[i][j]:
                    TR += [(0,i,j)]
                    break
            RecSetDirsTriangles((0,i),Connects, TR)
            break
    print("найдено треугольников: ", len(TR))
    
    #2. посчитать площадь базы, объем усеченной призмы и вклад в центр масс каждого
    V = 0
    CM = [0, 0, 0]
    for T in TR:
        '''Гаус рулит:           x1y2                         x2y3                         x3y1                           x2y1                        x3y2                        x1y3'''
        S = 0.5 * (dots[T[0]][0]*dots[T[1]][1] + dots[T[1]][0]*dots[T[2]][1] + dots[T[2]][0]*dots[T[0]][1] - dots[T[1]][0]*dots[T[0]][1] - dots[T[2]][0]*dots[T[1]][1] - dots[T[0]][0]*dots[T[2]][1])
        #S может быть + или - в зависимости от того, как направлен треугольник
        V += S*(dots[T[0]][2] + dots[T[1]][2] + dots[T[2]][2])/3 #объем усеченной призмы считается просто...
        
        #c центром масс я так просто не отделаюсь
        c1 = ((dots[T[0]][0] + dots[T[1]][0] + dots[T[2]][0])/3, (dots[T[0]][1]+ dots[T[1]][1]+ dots[T[2]][1])/3) #центральная точка проекции треугольника
        hm = min([dots[T[0]][2] , dots[T[1]][2] , dots[T[2]][2]])
        hM = max([dots[T[0]][2] , dots[T[1]][2] , dots[T[2]][2]])
        indM = [dots[T[0]][2] , dots[T[1]][2] , dots[T[2]][2]].index(hM)
        indm = [dots[T[0]][2] , dots[T[1]][2] , dots[T[2]][2]].index(hm)
        V3 = S * hm
        if indM == indm: #горизонтальный прямоугольник!
            CM[0] += V3*c1[0]
            CM[1] += V3*c1[1]
            CM[2] += V3*hm/2
            continue
        L = [0,1,2]
        
        L.remove(indM)
        L.remove(indm)
        indmidle = L[0]
        dots1 = [dots[T[0]], dots[T[1]], dots[T[2]], (dots[T[indM]][0], dots[T[indM]][1] , hm)] #верхний тетраэдер
        V1 = TetrV(dots1)
        if S < 0:
            V1 = -V1
        V2 = S * ( dots[T[indmidle]][2] - hm)/3
        #V3 = S * hm
        CM[0] += V1*((dots[T[0]][0] + dots[T[1]][0] + dots[T[2]][0] + dots[T[indM]][0])/4) + V2*((dots[T[0]][0] + dots[T[1]][0] + dots[T[2]][0] + dots[T[indmidle]][0])/4) + V3*c1[0]
        CM[1] += V1*((dots[T[0]][1] + dots[T[1]][1] + dots[T[2]][1] + dots[T[indM]][1])/4) + V2*((dots[T[0]][1] + dots[T[1]][1] + dots[T[2]][1] + dots[T[indmidle]][1])/4) + V3*c1[1]
        CM[2] += V1*((dots[T[0]][2] + dots[T[1]][2] + dots[T[2]][2] + hm)/4) + V2*((dots[T[0]][2] + dots[T[1]][2] + dots[T[2]][2] + hm)/4) + V3*hm/2

    CM[0] = CM[0]/V
    CM[1] = CM[1]/V
    CM[2] = CM[2]/V

    return (math.fabs(V), CM)

Кусок алгоритма, где считаются направления треугольников и используются для понимания внешнего и внутреннего объема — это очень сильный ход, его много как можно применить при работе с многогранниками. Например, если надо посчитать направление нормалей «наружу» — достаточно знать направление «против часовой стрелки» для одной грани — и вуаля!


(угадай фильм!)

Добавить комментарий