全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
1641 6
2014-05-20
已知有两组n个点的坐标,分别将两组相邻点做线段,求这两组n-1条线段相交点的坐标,希望大神给我编个程序
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-5-21 10:31:33
这也太难了吧?
首先得考虑横坐标是不是等长,是不是重合的
其次还有纵坐标……

这么通用的程序怎么可能编完?
没有数据的特性可以简化编程么
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-5-21 12:36:35
Benlaron 发表于 2014-5-21 10:31
这也太难了吧?
首先得考虑横坐标是不是等长,是不是重合的
其次还有纵坐标……
xx=Data1(:,1);
yy=Data1(:,2);
for i=1:(size(xx)-1)
    xx1=[xx(i),xx(i+1)];
    yy1=[yy(i),yy(i+1)];
result=polyfit(xx1,yy1,1);
a(i)=result(1);
b(i)=result(2);
% syms x y;
% y=a*x+b
end
我写了一个程序 可以算出n-1条方程   但是两个n-1条方程   分别对应的位置的两个线段的交点  我还在想
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-5-21 12:37:29
殇诚 发表于 2014-5-21 12:36
xx=Data1(:,1);
yy=Data1(:,2);
for i=1:(size(xx)-1)
就是分别求对应的n-1条线段对应的解   有的话就表示出来  没有的话就显示错误
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-5-21 12:40:53
殇诚 发表于 2014-5-21 12:37
就是分别求对应的n-1条线段对应的解   有的话就表示出来  没有的话就显示错误
还有种想法就是,比如第一个点的坐标的表示为,a1>b1 然后比较ai,bi  一旦在某处ai<bi则出现交点  然后循环下去   就可求得所有的交点位置   对于程序的话  我还在想  如果你能编的出来  帮我一下  呵呵
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-5-22 13:55:22
我想说的是,比如说xx的第一个步长很大,而yy的第二个步长很小,有可能一条线段会交多个点
所以区间的划分我觉得有必要事先考察一下
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群