/// <summary>
/// 射线相交算法1
/// </summary>
/// <param name="poly"></param>
/// <param name="aPoint"></param>
/// <returns></returns>
public static bool IsInPolygon(List<RgPoint> poly, RgPoint aPoint)
{
bool flag = false;
int count = poly.Count;
if (count < 3)
{
return false;
}
double x = poly[count - 1].X;
double y = poly[count - 1].Y;
for (int i = 0; i < count; i++)
{
double num5;
double num6;
double num7;
double num8;
if (poly[i].X > x)
{
num5 = x;
num7 = poly[i].X;
num6 = y;
num8 = poly[i].Y;
}
else
点在多边形内算法
最新推荐文章于 2024-04-01 14:08:54 发布
这篇博客介绍了两种判断点是否在多边形内的算法:射线相交算法和旋转算法。提供了C#代码实现,包括IsInPolygon方法(射线相交算法1)和wn_PnPoly方法(旋转算法),通过计算交叉次数和风力数来确定点的位置。

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



