Нам нужно выяснить быстрый и довольно точный метод для точки в многоугольнике для значений широты и долготы и многоугольников на картах Google. После некоторого исследования - наткнулся на несколько сообщений о геометрических расширениях mysql и реализовал это тоже -
SELECT id, Contains( PolyFromText( 'POLYGON(".$polygonpath.")' ) , PointFromText( concat( \"POINT(\", latitude, \" \", longitude, \")\" ) ) ) AS
CONTAINS
FROM tbl_points
Однако это не сработало с многоугольниками, состоящими из большого количества точек: (
После некоторых дополнительных исследований - наткнулся на стандартный алгоритм, называемый алгоритмом Ray-casting, но прежде чем пытаться разработать запрос для этого в MySQL, я хотел рискнуть, если кто-то уже прошел через это или наткнулся на полезную ссылку, которая показывает, как реализовать алгоритм в MySQL / SQL-сервере .
Итак, короче - вопрос:
Может ли кто-нибудь предоставить MySQL / SQL-сервер реализацию алгоритма преобразования лучей?
Дополнительная информация: