标题: 三次B样条曲率与导数算法Matlab代码 [打印本页] 作者: 建不了的模。 时间: 2014-12-17 09:45 标题: 三次B样条曲率与导数算法Matlab代码 function result = BspCurv( C,U,t,k)
%
%CURVATURE B样条曲线在t点曲率
%C控制点,U节点序列,U(k)<=t<U(k+1)
%
%see also
%
dev1=0;
dev2=0;
%%计算一阶导数
for i=k-2:k
dev1=dev1+DeBoorDv(C,U,t,i,1)*Bbase(i,2,U,t);
end
%计算二阶导数
for i=k-1:k
dev2=dev2+DeBoorDv(C,U,t,i,2)*Bbase(i,1,U,t);
end
%计算曲率
temp=norm(dev1)^3;
if temp==0
result=NaN;
else
result=det( cat(1,dev1,dev2))/temp;
end
复制代码