542263950 发表于 2009-3-21 15:59

求两曲线间的平均距离

我画了两条曲线(不知道表达式,因为是拟合曲线),现在要求求出两条曲线之间的平均距离。假定两条曲线的始末点在轴的坐标是一样的。请教高手如何编程。

[ 本帖最后由 ChaChing 于 2009-3-21 23:27 编辑 ]

ChaChing 发表于 2009-3-21 17:41

回复 楼主 542263950 的帖子

LZ的平均距离定义为何? 相同x时, y的差异? 还是其他?
时间有限, 建议LZ先大约自己试编一下

542263950 发表于 2009-3-21 19:11

这是我用MATLAB编的程序所画出的图像,我现在是要求给定始末点x值相同。求其曲线间平均厚度。这应该用什么函数编啊。有高手给我编一个程序来求其平均厚度。两条曲线的函数是
axis(); hold on
xy = []; n = 0;
disp('Left mouse button picks points.'); disp('Right mouse button picks last point.');
but =1;
while but ==1
    =ginput(1); plot(xi,yi,'ro'); n=n+1; xy(:,n)=;
end
t=1:n; ts=1:0.1:n; xys=spline(t,xy,ts); plot(xys(1,:),xys(2,:),'b-');

xy = []; n = 0;
disp('Left mouse button picks points.'); disp('Right mouse button picks last point.');
but =1;
while but ==1
    =ginput(1); plot(xi,yi,'ro'); n=n+1; xy(:,n)=;
end
t=1:n; ts=1:0.1:n; xys=spline(t,xy,ts); plot(xys(1,:),xys(2,:),'b-');
hold off
grid on

[ 本帖最后由 ChaChing 于 2009-3-21 21:33 编辑 ]

sogooda 发表于 2009-3-21 19:47

回复 板凳 542263950 的帖子

对两曲线之间的部分积分,除以x轴长度得到的是不是就是楼主想要的平均厚度?

542263950 发表于 2009-3-21 20:05

我也是这么想的,我就规定两条曲线的起点和终点x值相等,求出面积,起点和终点x值的差值,得到它的平均厚度。那我应该怎么写程序才能在上述程序下得到其平均厚度。请教高手

ChaChing 发表于 2009-3-21 21:43

使用ginput很难控制"起点和终点x值相等"吧!?
不能直接采用x,y进行spline, 控制其fit完之x座标相同, 再直接求两y差之平均即可!

542263950 发表于 2009-3-22 08:56

虽然用ginput不能使得x值相等,但是我想可以写段程序使得取的x的值是相等的。然后按照曲面图形求的的面积。现在关键是怎么编程序使得鼠标点到曲线上时候,使两条曲线的x值都为该值,加上求面积的编程。请高手指教下。最好有程序写出的。
页: [1]
查看完整版本: 求两曲线间的平均距离