例如,如果我们有这些坐标集
"latitude": 48.858844300000001,
"longitude": 2.2943506,
Run Code Online (Sandbox Code Playgroud)
我们怎样才能找到这个城市/国家?
问题是:如何确定一个点是否在多边形内?
这个问题已被多次询问和回答.有多种方法可用于确定点是否在多边形内.
我已经编写了绕组数算法,将另一个SO线程的可靠答案移植到C#中并在其周围编写了xUnit测试,以确保我能够无情地重构.目标是得到一个答案,所有这些似乎都使用过程编程方法和变量名称,这些名称与您在数学公式中找到的类似,并将其重构为一组合理合理的OOP类和方法.
所以,要将这个问题专门改为我将继续提供的答案:
如何确定位置/点(纬度和经度)是否在OOP C#中的多边形内?
我需要在C#中实现Geofence.地理围栏区域可以是圆形,矩形,多边形等.有没有人在C#中实现Geofence?
我发现了Geo Fencing - 指向内/外多边形.但是,它仅支持多边形.
我在具有4个节点的地图上定义了一个矩形。
每个节点都是一对(X,Y)
X:纬度
Y:经度
X,Y:地理坐标(具有双精度值)
我想检查点 (X,Y)是否在该矩形内。
该点将是用户的当前位置(当前位置来自手机的GPS输出)
是否有特定的数学公式?如何确定特定点是否属于矩形?
原因我想在C#中实现它。
c# ×3
geolocation ×3
geo ×2
point ×2
coordinates ×1
geocoding ×1
geospatial ×1
oop ×1
polygon ×1
rectangles ×1