首页 新闻 赞助 找找看

算法,已知直线,选中一点查找附近的相交点

0
悬赏园豆:80 [已关闭问题] 关闭于 2017-06-15 11:30

平面上已只的几条线直线,相交形成了闭合区间。选中闭合区间的任一点,找到对应的多边形定点。图中带圈的点,求算法?

公寓城影子传说的主页 公寓城影子传说 | 初学一级 | 园豆:134
提问于:2017-04-12 15:12
< >
分享
所有回答(5)
0

 几条直线,意思是所知的点不多是么

codingHeart | 园豆:1511 (小虾三级) | 2017-04-12 16:50
0

把这个问题转化为图像处理的问题就很容易了。若干条直线形成了若干个区域,每个区域是一个连通域。选中区域内一点即选中区域,然后找到区域的边界角点。

*神气* | 园豆:196 (初学一级) | 2017-04-12 17:38

图形学算话应该能更快更好一点,不过对其不是很熟悉,暂时没想到。

支持(0) 反对(0) *神气* | 园豆:196 (初学一级) | 2017-04-12 17:39
0

想到的思路1:从直线集合中选择几条可以形成闭合区域包含“选择的点”的直线作为结果集,然后通过判断剩余的直线(候选结果集)是否通过该闭合区域,如果通过,更新形成闭合区域的结果集;如果不通过,从候选结果集中删除;遍历至获选结果集,最终在结果集中的直线计算交点;

思路2:找到与“选择的点”最近的直线,从该直线与“选择的点”的垂线交点向两端找与其他直线的最近交点位置,再从相交的线找其他线,每次查找到的交点都记录下来,作为结果集合;

时间复杂度没有考虑,我只是想了一下思路,希望对你有帮助

黑山彩云间 | 园豆:204 (菜鸟二级) | 2017-04-13 08:35
0

已知所有直线,所以已知所有直线交点。

给定一点(X),通过勾股定理,计算出X点与所有直线交点的距离,得到与X点距离最近的交点(A)。

通过A点,得到A点所在直线(1),然后根据X和A的相对位置,可以得到直线1上另一个交点(B)。

通过B点,得到B点所在的另一条直线(2),依此类推直到重新找到A点。

 

 

 

 

写代码的小2B | 园豆:4371 (老鸟四级) | 2017-04-13 11:31
0

这个应该用到图的数据结构

万里沙来手一挥 | 园豆:196 (初学一级) | 2017-04-23 00:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册