exponenta event banner

spcrv

Сплайновая кривая по равномерному разделению

Синтаксис

spcrv(c,k)
spcrv(c)
spcrv(c,k,maxpnt)

Описание

spcrv(c,k) обеспечивает плотную последовательность f (tt) точек на однородной B-сплайновой кривой f порядкаk с коэффициентами B-сплайна c. Явно, это кривая

f:t|→∑j=1nB (t k/2 | j,... , j +  k) c (j), k2≤t≤n+k2

с B| a,..., z) B-сплайн с узлами a,..., z и n количество коэффициентов в c, т.е. [d,n] равняется size(c).

spcrv(c) выбирает заказ k быть 4.

spcrv(c,k,maxpnt) обеспечивает, по крайней мере, maxpnt генерируют точки. Значение по умолчанию для максимального количества сайтов tt генерируется: 100.

Интервал параметров последовательности сайта tt равномерно заполняет интервал [k/2 .. (n-k/2)].

Выход состоит из массива f (tt).

Примеры

Ниже будет показана сомнительная ломаная линия и ее сглаженная версия:

points = [0 0 1 1 0 -1 -1 0 0 ;
        0 0 0 1 2 1 0 -1 -2]; 
plot(points(1,:),points(2,:),':') 
values = spcrv(points,3); 
hold on, plot(values(1,:),values(2,:)), hold off

Алгоритмы

Повторная вставка срединного узла используется до тех пор, пока не будет не менее maxpnt сайты. Бывают ситуации, когда использование fnplt будет более эффективным.

См. также