我有分散的数据[x(:),y(:),z(:)]
,我希望在给定新点(x1,y1)
的情况下,在此时插入曲面法线。
目前我在matlab中使用“scatInterpolant”,然后在想要的点插入表面的导数。
我想找到一个更有效的选项,我可以使用matlab的编码器转换为mex。
我目前的代码:
F = scatteredInterpolant(X(:), Y(:), Z(:));
[Xq,Yq] = meshgrid(X(1,:),linspace(Y(1,1),Y(end,1),size(Y,1)));
Zq = F(Xq,Yq);
[ZX,ZY] = gradient(Zq);
gradX=interp2(Xq, Yq, ZX,X1, Y1);
gradY=interp2(Xq, Yq, ZY,X1, Y1);
提前致谢