NURBS-кривая. Контрольные точки.
Обсуждение стоит начать с объяснения термина NURBS, который является аббревиатурой (сокращением) и расшифровывается как Non-Uniform Rational B-spline, где:
- "Non-Uniform" (неоднородный) означает, что область влияния контрольной точки на форму кривой может быть различной. Это очень важное свойство для моделирования иррегулярных кривых.
- "Rational" (рациональный) означает, что математическое выражение, описывающее форму моделируемой кривой, есть отношение двух полиномов.
Эта особенность позволяет точнее моделировать различные кривые, например конические сечения.
- "B-spline" (basis spline, базовый сплайн) – способ математического описания кривой интерполяцией между тремя и более контрольными точками.
Замечание
Заметим заранее, привычные для плоских векторных художников кривые Безье являются специальным (частным) случаем В-сплайна. Информацию о кривых Безье см. далее, в одноименном разделе.
Вряд ли эти расшифровки внесли большую ясность для читателей, не знакомых с математикой. Тогда давайте все по порядку.
Контрольные точки
Для начала следует вспомнить определение параметрической кривой, которое упоминалось ранее.
Определение параметрических функций см. в разд. "Параметрические уравнения" данной главы.
В этом определении левая часть выражения, описывающая функцию q, выглядит так:
q(t)
=
...
Где t – параметр, представляющий заданный набор значений определенного диапазона, как правило, от 0 до 1. Используя эти значения, получают последовательность пар {х, у}, по которым строится моделируемая кривая (рис. 12.6).
Рис. 12.6. Пример построения параметрической кривой
В указанном выше выражении не определена правая часть, т. е. собственно параметрическое уравнение, а точнее, параметрические уравнения.
Одной из основополагающих особенностей NURBS-кривой является то, что ее форма определяется расположением множества контрольных точек (control points). На рис. 12.7 эти точки обозначены как Bi.
Замечание
Контрольные точки соединены для наглядности прямыми линиями. Эта ломаная линия получила название управляющего многоугольника (control polygon).