bien formado y matplotlib punto en polígono no es preciso con la geolocalización
Estoy probando la función de punto en polígono con matplotlib y bien proporcionado.
Aquí hay unmapa Contiene un polígono triangular de las Bermudas.
Mapas de GoogleLas funciones de punto en polígono muestran claramentetestingPoint ytestingPoint2 Están dentro del polígono que es un resultado correcto.
si pruebo los dos puntos enmatplotlib y bien formado, solo el punto2 pasa la prueba.
In [1]: from matplotlib.path import Path
In [2]: p = Path([[25.774252, -80.190262], [18.466465, -66.118292], [32.321384, -64.75737]])
In [3]: p1=[27.254629577800088, -76.728515625]
In [4]: p2=[27.254629577800088, -74.928515625]
In [5]: p.contains_point(p1)
Out[5]: 0
In [6]: p.contains_point(p2)
Out[6]: 1
bien proporcionado muestra el mismo resultado que matplotlib.
In [1]: from shapely.geometry import Polygon, Point
In [2]: poly = Polygon(([25.774252, -80.190262], [18.466465, -66.118292], [32.321384, -64.75737]))
In [3]: p1=Point(27.254629577800088, -76.728515625)
In [4]: p2=Point(27.254629577800088, -74.928515625)
In [5]: poly.contains(p1)
Out[5]: False
In [6]: poly.contains(p2)
Out[6]: True
¿Qué está pasando aquí realmente? ¿Es el algoritmo de Google mejor que esos dos?
Gracias