spcrv

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

Синтаксис

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

Описание

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

f:t|j=1nB(tk/2|j,...,j+k) c(j), k2tn+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 было бы более эффективным.

Смотрите также