Это методы криволинейной аппроксимации по точкам.. В основе – использование несложных формул, позволяющих восстанавливать облик изделия с заданной точностью. При этом сложные поверхности разбиваются на небольшие фрагменты, которые описываются набором небольшого числа точек. Через них проводят плавные поверхности, которые описываются аналитически.
Рассмотрим наиболее простые и часто используемые сплайны, в построении которых используются кубические (в случае одномерных сплайнов или сплайновых кривых) и бикубические (2-мерные сплайны / поверхность) многочлены.
По заданному массиву точек на плоскости на плоскости (2d) или в пространстве (3d) построить кривую проходящую через эти точки (интерполяция) либо в близи этих точек (задача сглаживания)
Точки пронумерованы в порядке возрастания абсцисс. Из матанализа известно что существует интерполяционный полином Лагранжа:
График которого проходит через все точки Xi,Yi. полином однозначно описывается своими коэффициентами W но есть недостатки:
- степень полинома на единицу меньше числа заданных точек
- изменение одной точки требует полного пересчёта всех коэффициентов.
Компромисс – касочная интерполяция, простейший случай – кусочно-линейная (2 точки), кусочно-квадратичная(3) и кусочно- кубическая (4).
Свойства сплайна:
1) график проходит через каждую точку заданного массива S(xi) = yi, i=0,…m
2) [xi,xi+1], i=0,1,….m-1 – функция многочлен 3-ей степени
3) на всём участке [x0,xm] функция имеет непрерывную производную
Т.к. на каждом из отрезков xi,xi+1] сплайн описывается 4-мя коэффициентами то для его построения нужно найти 4m чисел исходя из непрерывности сплайна во всех внутренних точках, а также 1 и 2 производных этих узлах.
14 лекция 2008.12.2008
Тот же недостаток - изменение одной точки требует пересчета всех коэффициентов, кроме того в многих задачах исходный набор точек задаётся приближенно, и следовательно требование прохождения кривой точно через каждую точку излишня.
Первое преимущество - расширение класса функций,
Второе - отказ от однозначности проецирования искомой прямой на координатной оси или поверхности на картинную плоскость.
3D задача. Используем параметрическое описание прямой.
x = x(t), y = y(t), z = z(t)
a £ t £ b,
где x(t), y(t), z(t) – функции, непрерывные на отрезке [a,b].
Если считать a = 0, b = 1, что достигается заменой
Если а =0 в = 1,то u=(t-a)/(b-a)
R=r(t) 0<t<1
R(t) - вектор (xyz)
Параметр т задаёт ориентацию параметризованной кривой гамма.
Гамма - регулярная кривая если r'(t)!=0 в каждой точке, то есть существует касательная, и она изменяется непрерывно при перемещении точки вдоль кривой.
Единичный вектор касательной гамма-кивой:
T(t) = r'(t)/|r'(t)|
Если потребовать наличие второй производной то можно определить вектор кривизны гамма производной:
модуль которого характеризует слепень её отклонения от прямой. В частности если гамма - отрезок прямой то К(т) = 0.
Есть упорядоченный набор точек определяемый векторами:
v0,v1 .... vM
Ломанная через эти точки - контрольная ломанная, порождаемой массивом. V={v1,..., vM}