图像缩略图

interparc.

版本1.3.0.0(6.81 kB) John d'Errico.
基于距离空间曲线的距离插值

10.1k下载

更新2012年8月16日

查看许可证

公共请求是沿着空间中的一些曲线(2个或更多尺寸)在固定距离处插入一组点(2个或更多尺寸。)用户通常具有沿曲线的一组点,其中一些是紧密间隔的,其他人没有那么关闭,而且他们希望创建一个沿相同曲线均匀间隔开的新集。

当假设插值是分段线性时,这很容易。但是,如果曲线是样条曲线,则可能以点之间的曲线之间的函数插值,这会变得更加困难。一个好的诀窍是在描述沿着曲线的路径的微分方程方面制定问题。然后可以使用ode求解器完成插值。

作为一个使用示例,我将在平面上随机选择一组围绕圆的点,然后生成一组新的点,这些点按照沿曲线的弧长等距分布,也就是围绕圆的周长。

Theta = Sort(Rand(15,1))* 2 * pi;
Theta(终点+ 1)=θ(1);
px = cos(θ);
py = sin(theta);

100个等间隔点,使用样条插值。

pt = interparc(100,px,py,'样条');

%绘制结果
绘图(PX,PY,'R *',PT(:,1),PT(:,2),'B-O')
轴([ - 1.1 1.1 -1.1 1.1])
轴相等
网格
Xlabel X.
Ylabel Y.
蓝色的标题点在圆圈周围的arclength中是均匀的

您现在还可以返回函数句柄以在任何时候评估曲线。同样,CSAPE是定期(封闭式)曲线的选项,只要它在MATLAB安装中可用。

[~, ~, foft] = interparc ([], px, py,样条);
FOFT(0:0.25:1)
ans =.
0.98319 0.18257
-0.19064 0.98151
-0.98493 -0.17486
0.18634 -0.98406
0.98319 0.18257

引用

John d'Errico(2021年)。interparc.(//www.tianjin-qmedu.com/matlabcentral/fileexchange/34874-interparc),matlab中央文件交换。检索到

MATLAB版本兼容性
用R2011A创建
与任何版本兼容
平台兼容性
窗户 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!