nobody 发表于 2016-7-24 05:14:00

折线内的点

我用这个来检查一个点是否在闭合的折线内,虽然在某些情况下会失败,有谁知道我该如何改进它,或者有什么更好的可以分享吗?   公共静态bool IsPointInPolyline(point 2d[]poly point array,Point2d mycurrentpoint)。
{。
var calc = polypointarray,跳过(1),Select((p,I)=)(mycurrentpoint)。Y -聚点数组,Y) * (p.X - polypointarray。X) - (mycurrentpoint,X - polypointarray。X) * (p.Y - polypointarray,y))。to list();。

if (calc,Any(p => p == 0))。
{。
返回true。
}。

for(int I = 1;i 。
{。
if(calc* calc。
{。
返回false。
}。
}。
返回true。
}。

**** Hidden Message *****

nobody 发表于 2016-7-24 05:20:56

哎呀......没关系。。。只是需要几分钟:/在这里找到它...
https://www.theswamp.org/index.php?topic=39031.msg515049#msg515049

kdub 发表于 2016-7-24 05:27:01


我只是将该链接放在我的剪贴板上,以便在此发布。
Gilles做了一些不错的工作!

nobody 发表于 2016-7-24 05:51:06


绝对同意
页: [1]
查看完整版本: 折线内的点