Здравствуйте уважаемые знатоки-картографисты.
Возникла необходимость получить координаты административных границ нескольких населённых пунктов. Мне по сути нужны координаты нескольких населённых пунктов и некоторых автомобильных дорог, поэтому скачивать фрагменты базу данных на локальный диск не вариант.
К примеру, вот здесь есть карта Москвы: http://www.openstreetmap.org/relation/102269
Существует ли способ собрать координаты точек с этой страницы?
В результате мне нужно получить данные в таком формате:
(66.68082606606005, -18.6328125),(66.11784630536273, -10.72265625),
(62.82706207783542, -10.634765625),(62.544753073521996, -20.654296875),
Через поиск по форуму мне удалось найти лишь слишком сложные решения. Большая просьба: подскажите пошаговый алгоритм, как решить задачу. Если он уже где-то расписан, то дайте хотя бы ссылку на него.
Какой это формат, тк сложно представить мульти полигоны и пути? В Ваш конкретный формат скорее всего прийдётся переводить руками. Предположим Вас устраивает geojson из которого в пару строчек кода можно привести в желаемый формат.
Для того чтобы получить геометрию Вам нужно знать либо osm_id, либо знать как их получить (теги), либо иметь тело нужных объектов.
Overpass позволяте искать объекты по id, тегам, вложенности геометрии. Также позволяет выгрузить тело osm объектов (см. вкладку Data) или их id (csv).
Через апи можно выгрузить тело объектов по id.
А тело обектов можно конвертировать в geojson, первое что попалось: http://tyrasd.github.io/osmtogeojson/
Также можно найти сервисы, позволяющие выгрузить объект в geojson зная id: http://polygons.openstreetmap.fr/.
Формат данных требуется нестандартный, его понимает плагин вордпресс.
Спасибо. Данный ресурс оказался полезным: в результате выдаёт почти готовый перечень координат полигона по id объекта. Для финишной подгонки под нужный формат придётся делать софт для автоматической обработки. Нужно поменять скобки с квадратных на круглые, и убрать кое где двойные и тройные скобки. Есть ещё одна проблема, карта Москвы состоит примерно из десятка разных полигонов, но мой плагин за один раз умеет построить только один, соответственно весь код нужно будет разделять на составляющие. Нельзя ли как-нибудь вывести полигон отдельно по Зеленограду или по Западному административному округу Москвы?
С помощью плагина прямо на карте гугл ставятся точки, по которым формируется полигон. В нижнем окне появляется его код. Если код уже есть, то его сразу можно вставить в окно и полигон выстроиться автоматически. Формат кода вы сами видите:
Мне нужно привести данные о координатах полигона именно к такому виду.
Весь алгоритм приведения к нужному виду пока вижу состоящим из следующих этапов:
Делается запрос в поиске на нужный населённый пункт на OpenStreetMap и выбирается нужный пункт из результатов выдачи.
Вы случаем не знаете подобных сервисов, только не для полигонов, а для трасс, где по id объекта можно выгрузить координаты? А то я даже не знаю, что в поисковике набирать, чтобы найти нечто подобное.
Я видимо в первый раз не понял что с этим xml делать, поэтому проигнорировал Ваше сообщение. Да я и до сих пор понять не могу, как эти данные xml преобразовать в WKT, GeoJSON или poly. Подскажите куда его скопировать, чтобы преобразовать?