Найти населенный пункт, заданный широтой - PullRequest
0 голосов
/ 28 февраля 2012

На веб-сайте пользователи нажимают на карту Google, я звоню в службу геокодирования и получаю всю доступную информацию для данного латинского номера.

У меня есть база данных всех провинций (областей) в Испаниии данные муниципалитеты для каждой области.У меня также есть широта каждого муниципалитета (в центре).Когда я ссылаюсь на муниципалитет, я думаю, это то, что Google называет «местонахождением».

Теперь я хотел бы сопоставить точку карты, на которую нажал пользователь, с соответствующим муниципалитетом.Как я мог этого добиться?Ответ Google не является допустимым ключом для поиска в базе данных, и могут быть различия в правописании.

Редактировать: Я нашел сайт с файлом kml на муниципалитет, определяющий его площадь.Мне нужно будет проанализировать каждый файл и найти тот, который содержит координаты, по которым щелкнул пользователь.Можно ли перевести эти kml в базу данных для быстрой обработки?

Ответы [ 3 ]

0 голосов
/ 28 февраля 2012

Вы можете сохранить геометрию в базе данных PostGIS и запустить GeoServer для ответа на эти запросы.

0 голосов
/ 28 февраля 2012

Отвечая на ваши изменения: Конечно, можно выполнить анализ точек-полигонов . Географическая база данных делает это простым, и это возможно сделать с негео-базой данных. Некоторые базы данных ГИС используют только ограничивающий прямоугольник, а не фактический многоугольник. При использовании базы данных, не относящейся к гео, вам необходимо кодировать ее самостоятельно, чтобы можно было использовать фактические данные границ. Смотрите решение 1 на http://local.wasp.uwa.edu.au/~pbourke/geometry/insidepoly/

0 голосов
/ 28 февраля 2012

Наилучшим подходом IMO было бы использование почтовых индексов. Если у вас есть почтовые индексы для каждого муниципалитета, вы можете получить почтовый индекс из результата геокодирования и использовать его для запроса к БД.

Если у вас нет сохраненных почтовых индексов (или чего-либо еще, что дает вам четкую связь между результатом геокодирования и вашей базой данных), вы можете использовать границы (вы найдете это в геометрии результат), чтобы запросить базу данных для точки в пределах.

...