Термин NURBS является аббревиатурой (сокращением) от слов Non-Uniform Rational B-spline, где:
· Non-Uniform (неоднородный) означает, что область влияния контрольной точки на форму кривой может быть различной. Это очень важное свойство для моделирования иррегулярных кривых.
· Rational (рациональный) означает, что математическое выражение, описывающее форму моделируемой кривой, есть отношение двух полиномов. (Эта особенность позволяет точнее моделировать различные кривые, например, конические сечения)
· B-spline[6](basis spline, базовый сплайн) - способ математического описания кривой интерполяцией между тремя и более контрольными точками.
Согласно определению параметрической кривой левая часть выражения, описывающая функцию q, выглядит так: q(t) = ...,
где t — параметр значений определенного диапазона, как правило, от 0 до 1. Используя эти значения, получают последовательность пар {х, у}, по которым строится моделируемая кривая (рис. 4).
В указанном выше выражении не определена правая часть, т. е. собственно параметрическое уравнение, а точнее, параметрические уравнения.
Одной из основополагающих особенностей NURBS-кривой является то, что ее форма определяется расположением множества контрольных точек (control points). На рис.5 эти точки обозначены как Bi.
Ломаная линия, соединяющая контрольные точки, называется управляющим многоугольником (control polygon).
Эта особенность NURBS-кривой важна, поскольку позволяет локализовать изменение формы кривой перемещением отдельных контрольных точек без изменения формы всей кривой в целом (рис. 6).
Рис. 6.Изменение формы фрагмента кривой, вызванное перемещением контрольной точки
Каждая контрольная точка определяет форму только той части кривой, которая находится в ее окрестности, и оказывает меньшее воздействие или вовсе не влияет на форму оставшейся части кривой.
Функция, которая определяет зависимость формы кривой от конкретной контрольной точки Bi, называется базовой функцией (basis function) этой контрольной точки.
В названии В-сплайнов буква В и означает базовые (basis). Значение базовой функции представляет собой вещественное число. Описание NURBS-кривой требует задания базовой функции для каждой контрольной точки.
Можно описать значения функции для выбранного значения параметра t, таким образом: 30% положения одной контрольной точки плюс 60% — другой и плюс 10% — третьей. Это, в частности, означает, что когда движущаяся частица удаляется от некоторой контрольной точки, она испытывает все меньшее воздействие. И, наоборот, при приближении частицы к контрольной точке ее положение все больше от нее зависит. Такой эффект повторяется всякий раз, когда движущаяся частица проходит все контрольные точки. Подобное "влияние" контрольной точки может быть не только выражено числовыми значениями, но и визуализировано на графике. Таким образом, можно построить график базовой функции как зависимость влияния на движущуюся частицу, например в процентах, от значения t (рис. 7).
Максимальный эффект (максимальное влияние) достигается в совершенно определенной точке и постепенно уменьшается по мере удаления.
Рис. 7.Типичный график базовой функции отдельной контрольной точки
Рис. 8.Однородные базовые функции для множества контрольных точек
Поскольку каждая контрольная точка "обязана" иметь свою базовую функцию, NURBS-кривая, построенная, например, по пяти контрольным точкам, должна иметь пять таких функций, перекрывающих некоторую область результирующей кривой (рис. 8).