kształtny i matplotlib punkt w wielokącie nie jest dokładny z geolokalizacją
Testuję funkcję punkt-w-wielokącie z matplotlibem i kształtem.
Tutaj jestmapa zawiera wielokąt trójkąta Bermudów.
Mapy Googlewyraźnie widać funkcje punktu w wielokącietestingPoint itestingPoint2 są wewnątrz wielokąta, co jest poprawnym wynikiem.
jeśli przetestuję dwa punktymatplotlib i zgrabny, tylko punkt2 przechodzi test.
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
kształtny pokazuje ten sam rezultat, co 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
Co tu się dzieje? Czy algorytm Google jest lepszy niż te dwa?
Dzięki