Методы определения коэффициентов плоскостиХотя уравнение плоскости: ax + by + cz + d = 0, содержит четыре неизвестных
коэффициента, его можно нормировать так, чтобы свободный коэффициент был равен
единице: d = 1. Следовательно, трех неколлинеарных точек достаточно для
определения этих коэффициентов. Подстановка координат трех неколлинеарных
точек (x1, y1, z1),
(x2, y2, z2),
(x3, y3, z3) в нормированное уравнение дает: В матричной форме это выглядит так: Или так: |X||C| = |D| (*). Решение этого уравнения дает значения коэффициентов уравнения плоскости: |C| = |X|-1|D|. Другой способ используется, если известен вектор нормали к плоскости, то есть n = ai + bj + ck, где i, j, k единичные векторы осей x, y, z соответственно. Тогда уравнение плоскости примет вид: ax + by + cz + d = 0. Величина d вычисляется с помощью произвольной точки на плоскости. В частности, если компоненты этой точки на плоскости (x1, y1, z1), то: d= -(ax1 + by1 + cz1). Поскольку объем вычислений в алгоритмах удаления невидимых линий или
поверхностей растет с увеличением числа многоугольников, для описания
поверхностей выгодно использовать многоугольники с более чем тремя сторонами.
Эти многоугольники могут быть как невыпуклыми, так и неплоскими. Метод,
предложенный Мартином Ньюэлом, позволяет найти как точное решение для уравнений
плоскостей, содержащих плоские многоугольники, так и «наилучшее» приближение
для неплоских многоугольников. Этот метод эквивалентен определению нормали в
каждой вершине многоугольника посредством векторного произведения прилежащих
ребер и усреднения результатов. Если a, b, c, d коэффициенты уравнения
плоскости, то (здесь n число вершин многоугольника) Пример 1. Уравнения плоскостей. Рассмотрим четырехсторонний плоский многоугольник, описываемый четырьмя вершинами V1(1, 0, 0), V2(0, 1, 0), V3(0, 0, 1) и V4(1, -1, 1) ( рис. 5.1). Используя вершины V1, V2, V4 и уравнение
(*), получаем: Или, разрешая относительно коэффициентов уравнения плоскости: Уравнение плоскости теперь имеет вид: Решая другим методом, можем получить нормаль к этой плоскости, используя
векторное произведение пары векторов, являющихся смежными ребрами одной из
вершин, например V1: i, j, k единичные векторы осей x, y, z
соответственно. Используя уравнение
d = -(ax1 + by1 + cz1) и V4,
получаем значение постоянного члена в уравнении плоскости: Следовательно, уравнение плоскости опять имеет вид: Обращаясь теперь к методу Ньюэла при n = 4, получаем из уравнения (**): a = (y1 - y2)(z1 + z2) + (y2 - y3)(z2 + z3) + (y3 - y4)(z3 + z4) + (y4 - y1)(z4 + z1) = (-1)(0) + (1)(1) + (1)(2) + (-1)(1) = 2 А используя V4, получаем для постоянного члена: После деления на 2 уравнение плоскости вновь принимает вид: Следующий пример проиллюстрирует метод Ньюэла для почти плоских многоугольников. Пример 2. Неплоские многоугольники. Рассмотрим почти плоский многоугольник,
описанный четырьмя вершинами V1(1, 0, 0), V2(0, 1, 0),
V3(0, 0, 1) и V4(1.1, -1, -1). Вычисляя нормаль в каждой
вершине через векторное произведение пары прилежащих ребер, имеем: Усредняя эти нормали, получаем: Определение постоянного члена в уравнении плоскости с использованием одной
из вершин, например V1, дает d = -1. Следовательно, приближенное
уравнение плоскости таково: Метод Ньюэла приводит к такому же результату. В частности Вычисление d с использованием V1 и деление на 2 дает такое же приближенное уравнение плоскости. Аппроксимирующая плоскость проходит через прямую x = z и содержит вершины V1 и V2. Однако V2 и V4 немного смещены по разные стороны от этой плоскости. |
|