Я создал плоскую кусочную кривую biarc в MATLAB, используя функцию rscvn
. Я был в состоянии построить его следующим образом:Оценка квадратичной rBform MATLAB
p = [0 1 2 3; 2 6 3 9];
B = rscvn(p)
fnplt(B)
hold on
scatter([0 1 2 3],[2 6 3 9]);
hold off
К сожалению, я не могу за жизнь мне понять, как оценить функцию B
для произвольной позиции, скажем 2.6
.
Как это сделать в MATLAB?
В этом случае, то, что оба ответа означают? Я бы ожидал только одного решения ... – user3185748
Ваш код вычисляет интерполяцию между точками (0,2), (1,6), (2,3), (3,9) по порядку. Функция оценки возвращает результат интерполяции между точками, где 'fnval (B, 0) = [0; 2]', 'fnval (B, 2) = [1; 6]', 'fnval (B, 4) = [2,3] ',' fnval (B, 6) = [3; 9] 'любой параметр вне диапазона [0,6] приведет к (0,0) (функция не экстраполируется). Поэтому, когда вы даете значение 2.6, оно вычисляет местоположение на кривой где-то между второй и третьей точками, то есть между (1,6) и (2,3). – jodag
@ user3185748 Я сделал редактирование ответа в ожидании того, что вы ищете. – jodag