Вектор нормали
Вектор нормали (нормаль) — это вектор, перпендикулярный касательной прямой (в случае кривой) или касательной плоскости (в случае поверхности) в заданной точке. В более широком смысле, для подмногообразия евклидова пространства, вектор нормали — это вектор, ортогональный касательному пространству в данной точке. Понятие является фундаментальным в дифференциальной геометрии, математическом анализе, физике и компьютерной графике, где используется для описания ориентации объектов, расчёта освещения и моделирования кривизны.
Определение и основные свойства
Для кривой на плоскости или в пространстве вектор нормали определяется как вектор, перпендикулярный касательному вектору в данной точке. Для гладкой поверхности в трёхмерном пространстве вектор нормали — это вектор, перпендикулярный касательной плоскости в точке. Вектор нормали может быть единичным (нормированным), если его длина равна единице; такой вектор называется единичной нормалью.
Основные свойства:
- Вектор нормали не определён однозначно: существует два противоположных направления (внутренняя и внешняя нормаль для замкнутых поверхностей).
- Для гладкой поверхности, заданной параметрически или неявно, нормаль вычисляется через частные производные или градиент.
- Вектор нормали является важной характеристикой локальной геометрии: по его изменению вдоль поверхности можно определить кривизну.
Вычисление вектора нормали
Для кривой на плоскости
Если кривая задана параметрически: \( \mathbf{r}(t) = (x(t), y(t)) \), то касательный вектор равен \( \mathbf{T}(t) = (x'(t), y'(t)) \). Вектор нормали \( \mathbf{N}(t) \) получается поворотом касательного вектора на 90 градусов: \[ \mathbf{N}(t) = (-y'(t), x'(t)) \quad \text{или} \quad \mathbf{N}(t) = (y'(t), -x'(t)) \] в зависимости от выбора ориентации. Для единичной нормали вектор делится на длину \( |\mathbf{T}(t)| \).
Если кривая задана неявно уравнением \( F(x,y) = 0 \), то вектор нормали в точке \( (x_0, y_0) \) равен градиенту: \[ \mathbf{N} = \nabla F(x_0, y_0) = \left( \frac{\partial F}{\partial x}, \frac{\partial F}{\partial y} \right) \]
Для поверхности в трёхмерном пространстве
Параметрическое задание. Пусть поверхность задана вектор-функцией \( \mathbf{r}(u, v) = (x(u,v), y(u,v), z(u,v)) \). Вектор нормали вычисляется как векторное произведение частных производных: \[ \mathbf{N} = \frac{\partial \mathbf{r}}{\partial u} \times \frac{\partial \mathbf{r}}{\partial v} \] Единичная нормаль: \( \mathbf{n} = \frac{\mathbf{N}}{|\mathbf{N}|} \).
Неявное задание. Если поверхность задана уравнением \( F(x,y,z) = 0 \), то вектор нормали равен градиенту: \[ \mathbf{N} = \nabla F = \left( \frac{\partial F}{\partial x}, \frac{\partial F}{\partial y}, \frac{\partial F}{\partial z} \right) \] Этот вектор перпендикулярен поверхности в точке, где \( F(x,y,z) = 0 \), при условии, что градиент не равен нулю.
Явное задание. Если поверхность задана как график функции \( z = f(x,y) \), то вектор нормали можно записать как: \[ \mathbf{N} = \left( -\frac{\partial f}{\partial x}, -\frac{\partial f}{\partial y}, 1 \right) \quad \text{или} \quad \mathbf{N} = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y}, -1 \right) \] в зависимости от выбора направления.
Классификация нормалей
Внешняя и внутренняя нормаль
Для замкнутой поверхности (например, сферы, куба) различают:
- Внешняя нормаль — направлена наружу от объёма, ограниченного поверхностью.
- Внутренняя нормаль — направлена внутрь объёма.
Выбор направления нормали важен в физике (например, для потока векторного поля через поверхность) и в компьютерной графике (для правильного освещения).
Главная нормаль и бинормаль
Для пространственной кривой помимо касательного вектора \( \mathbf{T} \) и вектора нормали \( \mathbf{N} \) (главная нормаль) вводится третий вектор — бинормаль \( \mathbf{B} = \mathbf{T} \times \mathbf{N} \). Три вектора образуют ортонормированный базис Френе, который описывает локальную геометрию кривой. Главная нормаль направлена к центру кривизны кривой.
Применение
В математическом анализе и дифференциальной геометрии
Вектор нормали используется для:
- Вычисления кривизны кривой и поверхности.
- Определения ориентации поверхности (ориентируемые и неориентируемые поверхности, например, лист Мёбиуса).
- Формулировки теоремы Стокса, теоремы Остроградского-Гаусса и других интегральных теорем.
В физике
- В электродинамике: вектор нормали к поверхности используется для вычисления потока электрического и магнитного поля.
- В гидродинамике: нормаль к поверхности жидкости определяет направление силы поверхностного натяжения.
- В механике: нормальная реакция опоры направлена по нормали к поверхности контакта.
- В оптике: закон отражения и преломления света формулируется через нормаль к границе раздела сред.
В компьютерной графике и геометрическом моделировании
Векторы нормали являются ключевым элементом для:
- Расчёта освещения по модели Фонга или Ламберта: интенсивность света зависит от угла между нормалью и направлением на источник света.
- Затенения (shading) и сглаживания (smoothing) — интерполяция нормалей между вершинами полигональной сетки.
- Карт нормалей (normal mapping) — техника, имитирующая рельеф поверхности без изменения геометрии.
- Определения видимости и отсечения невидимых граней (back-face culling).
В робототехнике и компьютерном зрении
- Планирование движения манипуляторов: нормаль к поверхности объекта определяет направление захвата.
- Восстановление формы по освещению (photometric stereo): по интенсивности пикселей при разных источниках света вычисляются нормали, а затем — форма объекта.
Примеры
Нормаль к плоскости
Плоскость, заданная уравнением \( Ax + By + Cz + D = 0 \), имеет вектор нормали \( \mathbf{N} = (A, B, C) \). Этот вектор перпендикулярен плоскости.
Нормаль к сфере
Сфера радиуса \( R \) с центром в начале координат задаётся уравнением \( x^2 + y^2 + z^2 = R^2 \). Вектор нормали в точке \( (x_0, y_0, z_0) \) равен \( \mathbf{N} = (2x_0, 2y_0, 2z_0) \), что коллинеарно радиус-вектору точки. Внешняя нормаль совпадает по направлению с радиус-вектором.
Нормаль к параболоиду
Параболоид вращения \( z = x^2 + y^2 \). В точке \( (1, 1, 2) \) частные производные: \( \frac{\partial z}{\partial x} = 2 \), \( \frac{\partial z}{\partial y} = 2 \). Вектор нормали: \( \mathbf{N} = (-2, -2, 1) \) (направлен вверх) или \( \mathbf{N} = (2, 2, -1) \) (направлен вниз).
Интересные факты
- Понятие нормали ввёл в математику немецкий математик Карл Фридрих Гаусс в начале XIX века в работах по дифференциальной геометрии поверхностей.
- В компьютерной графике для хранения нормалей часто используется формат сжатия — нормали кодируются в текстурах с помощью RGB-каналов (карты нормалей).
- Для неориентируемых поверхностей, таких как лист Мёбиуса, невозможно непрерывно задать единый вектор нормали по всей поверхности.
Источники
- Дубровин Б. А., Новиков С. П., Фоменко А. Т. Современная геометрия: Методы и приложения. — М.: Наука, 1986.
- Погорелов А. В. Дифференциальная геометрия. — М.: Наука, 1974.
- Фоли Дж., ван Дам А., Файнер С., Хьюз Дж. Компьютерная графика: принципы и практика. — М.: Вильямс, 2001.
- Ландау Л. Д., Лифшиц Е. М. Теоретическая физика. Том 2: Теория поля. — М.: Физматлит, 2003.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →