данные геолокации по адресу
Координаты Google
Предлагаем воспользоваться аналогичным сервисом от Яндекса — найти координаты
Здравствуйте, уважаемые друзья портала u-karty.ru!
Заполните форму поиска Google Maps — ввести город, улица, номер дома. Наберите через пробел название любого географического объекта. Или самому переместить метку в нужное место, и осуществить поиск (нажать «Найти») по координатам объекта на карте Гугл. Подобный поиск уже применяли, когда искали в Краснодаре улицы и районы. Воспользуйтесь изменением масштаба схемы (искомый масштаб появится в третьем поле сверху), чтобы подробнее рассмотреть местоположение дома на улице.
Как вы могли заметить, при перемещении метки на схеме, изменяются географические параметры. Получаем своеобразную карту с широтами и долготами. Ранее мы уже занимались определением координат на карте Яндекс
Используя метод от обратного, каждый сможет по известным параметрам осуществить поиск по координатам в Гугле. Вместо географического названия объекта, заполняем форму поиска известными координатами. Сервис определит и покажет на карте точное географическое местоположение улицы, района.
Интересные места в Google Maps — онлайн тайны со спутника
Зная адрес любого города мира, легко определяется широта и долгота Вашингтона и Сантьяго, Пекина и Москвы. Схема г. Саратова с номерами домов и улиц доступна как гостям города, так и местным жителям. Уверены, вы уже смогли освоить данный инструмент на странице, по умолчанию на карте находится центр столицы России — город Москва. Нашли свою широту и долготу на карте по адресу — геолокация месторасположения
Мы же предлагаем узнать тайны сервиса Maps Google онлайн. Спутник не пролетит мимо интересных исторических мест, каждое из которых популярно в определенной части земного шара
Ниже вы сможете сами убедиться в том, что данные интересные места земли заслуживают особого внимания. И сервис Google Maps Спутник с удовольствием предлагает найти и увидеть самые известные географические тайны мира. Считаем, что жителям Самарской области будет также интересно. Как выглядит Автозаводский район Тольятти — они уже знают
Вам не надо определять их географические координаты и искать нужные карты Гуглы сервиса. Достаточно скопировать любые параметры из списка ниже — широту и долготу (CTRL+C)
К примеру, будем смотреть со спутника (перейти на тип схемы «Спутник») крупнейший стадион мира и Бразилии — Маракана ( Рио-де-Жанейро, Maracana). Копируем широту и долготу из списка ниже:
Сохранить в закладки в любом браузере — CTRL+D
Приглашаем поделиться списком со своими друзьями!
Благодарим за предоставленные данные сервис Google Maps
Моё местоположение
Если вы разрешите сервису определить ваше местоположение, то информация о нем будет учтена при построении ваших маршрутов, при отображении пробок, при поиске объектов.
Определять местоположение пользователя — не обязательно.
Чтобы дать сервису возможность определить своё местоположение:
Нажмите на метку, чтобы увидеть точный адрес и географические координаты местоположения. Нажмите кнопку рядом с адресом, чтобы построить маршрут до точки местоположения.
Подробнее об определении местоположения пользователя см. Определение местоположения пользователя.
Моё местоположение
Если вы разрешите сервису определить ваше местоположение, то информация о нем будет учтена при построении ваших маршрутов, при отображении пробок, при поиске объектов.
Определять местоположение пользователя — не обязательно.
Чтобы дать сервису возможность определить своё местоположение:
Нажмите кнопку Моё местоположение .
На точке вашего местоположения отобразится метка .
Нажмите на метку, чтобы увидеть точный адрес и географические координаты местоположения. Нажмите кнопку рядом с адресом, чтобы построить маршрут до точки местоположения.
Подробнее об определении местоположения пользователя см. Определение местоположения пользователя.
Как наладить поиск адреса по координатам (и где взять нужный справочник)
Весной мы добавили в API DaData.ru фичу «Обратное геокодирование», она же «Адрес по координатам». Название намекает: метод принимает геокоординаты и отдает данные об адресе.
Солидный продукт с той же функциональностью предлагает «Яндекс» — он называется «Геокодер». Но сервис «Яндекса» бесплатен только для открытых некоммерческих проектов. Стандартный же тариф — от 120 000 ₽ в год — подходит не всем.
Мы подумали — если сделать бесплатную или недорогую альтернативу «Геокодеру», разработчики наверняка скажут спасибо. И сделали. В статье расскажу, как устроен «Адрес по координатам»: как мы наладили поиск, собрали справочник и упаковали в готовый метод.
Где берем данные и чем ищем адрес
Подступаясь к задаче, мы изучили готовые решения: где взять справочник координат с адресами и как потом искать по этому справочнику географические объекты. Оказалось, за нужными инструментами даже не придется далеко ходить.
Адресные объекты берем в ФИАС — Федеральной информационной адресной системе. Это самый полный из открытых и официальных адресных справочников. Подробно о нем мы уже писали на «Хабре», а сейчас важны четыре факта:
Координаты загружаем из OpenStreetMap (OSM). OSM — проект со свободной лицензией: энтузиасты собирают координаты всевозможных объектов и выкладывают для всех желающих.
Если по-простому, OSM — это набор точек, линий и полигонов на карте. У каждого объекта свое описание, тип и набор координат. Данные OSM для России лежат по адресам needgeo.com, osm.sbin.ru/osm_dump/ и osmosis.svimik.com/latest/.
Список источников публикуют на специальной странице в «Вики» проекта
Выгрузки состоят из PBF-файлов — этот формат используют вместо XML как более компактный. Превратить PBF в OSM XML ничего не стоит, с этим справится куча одобренных сообществом утилит.
Для собственного справочника мы берем адресные объекты из ФИАС, а затем ищем их координаты в OSM. Если нашли, сохраняем объединенные данные. Получается такое пересечение ФИАС и OSM.
И все это замечательно, но есть одна проблема: с качеством данных в OSM дела обстоят непросто. Координаты объектов часто не соответствуют реальности. Например, полигоны для регионов и районов адекватны. А для городов и ниже — уже не очень.
Полигоны — это многоугольники, ограничивающие площади на карте. Они состоят из связанного набора точек с координатами. Полигонами обозначают границы регионов, районов, городов и даже зданий
Основная работа, и с большим отрывом — собрать из OSM адекватные данные и отсеять брак. Задача настолько объемная, что я отвел под нее в статье отдельный раздел.
Дома, которых нет в ФИАС, загружаем тоже из OSM. Выше я уже говорил, что в ФИАС отсутствуют десятки тысяч домов. Это даже не проблема, а просто реальность, фон. Поэтому мы пополняем свой справочник домами из OSM. Но только теми, для которых в ФИАС существует улица. У пришедших из OSM зданий нет ФИАС ID, поэтому мы идентифицируем их как ФИАС-код родителя + номер дома.
По справочнику ищем с помощью прекрасного Lucene — нашего многолетнего помощника. За наводку спасибо сведущему индийцу, написавшему пост Indexing Geographical Data With Lucene (хорошее дополнение — материал A dive into spatial search algorithms — о k-d-деревьях, на которых построен алгоритм поиска).
Как только мы узнали об у́дали Lucene, проблема с поиском решилась почти сама. Делов осталось — пройтись наждачкой.
Как собрали базу координат и адресов
Для начала выложу багаж: прочитав статью, быстро сделать подобный справочник не получится. Мы собираем его с 2014 года, постоянно дополняя. Об этом чертовски длинном пути я и расскажу.
Самое сложное при составлении справочника — перебрать кординаты, которые пришли из OSM. На старте мы выверяли их как могли, в том числе руками. Главная цель тогда — получить опорные точки в крупных городах и сделать из них эталонный справочник. Теперь, когда таких точек много, проверять новые данные вручную почти не приходится. За раз мы добавляем в эталонный справочник 200 000–300 000 адресов с координатами, и вот как это делаем.
Формируем из OSM-тегов полные адреса́. В OSM-выгрузках составные части адресов разбросаны по разным тегам:
Прогоняем каждый новый адрес через API стандартизации «Дадаты». Сервис приводит адреса к единому формату «Как в ФИАС»:
142718, Московская обл, Ленинский р-н, с Булатниково, ул Центральная, д 103.
Адрес | ФИАС ID | Широта | Долгота |
---|---|---|---|
142718, Московская обл, Ленинский р-н, с Булатниково, ул Центральная, д 103 | a8b6a52f-e96d-4ec3-a0ff-641013ab0445 | 55.558773 | 37.667103 |
119034, г Москва, пер Турчанинов, д 6 стр 2 | 8c925e61-9173-48b3-999e-dc85c86d89e7 | 55.737096 | 37.597190 |
Разбираем адреса, которые «Дадата» не стандартизовала. Адреса́, которые не получилось сопоставить с ФИАС, сервис помечает флажком. Их проверяем вручную, вариантов здесь несколько.
Проверяем, насколько адекватны загруженные координаты. Для этого специальной утилитой смотрим, попадают ли координаты нового объекта в полигон родительского региона или района. Если адрес сообщает, что объект находится в Омской области, будь добр по координатам попадать в ее полигон. Вхождения в город не требуем — не все города точно освещены в OSM, для многих данные не обновляют.
Эталонные полигоны мы загружаем из OSM и храним как есть — в формате GeoJSON. Чтобы выбрать, к какому полигону примерить точку, смотрим в отдельную таблицу. В ней мы сопоставили префиксы КЛАДР-кодов и ID полигонов: находишь для адреса КЛАДР-код и видишь, какой полигон выбрать.
КЛАДР-код — это уникальный идентификатор, который использовали еще до появления ФИАС. Находить этот код для адреса умеет миллион сервисов
Утилита разрешает объекту отстоять от положенного полигона на 1 700 метров. Это правило добавили из-за шоссе, которые часто выходят за границы региона. Но расстояние больше 1 700 метров — признак ошибки, так говорит статистика.
На этом для городов и улиц проверка заканчивается.
Еще раз, построже, проверяем загруженные координаты домов. В дело снова вступает упомянутая утилита, и вот что она делает.
Проверку проходят только дома, которые удалены от надежных коллег не более чем на 150 метров. Причем каждый новый одобренный дом мы учитываем при разборе следующих. Вот как это работает.
Допустим, в эталонном справочнике хранятся дома № 1, 2 и 3 по улице Коммунаров. В новых данных пришли дома № 5, 6 и 7 по той же улице. Судя по координатам, новые дома стоят рядом. Утилита видит, что дом № 5 находится рядом с домами № 1, 2 и 3 и добавляет его в эталонный справочник. Значит, дома № 6 и 7 тоже проходят проверку.
А дальше решается судьба пришедших из OSM данных:
В первой таблице — все объекты c ФИАС ID до домов: регионы, населенные пункты, улицы. Во второй — дома́ и ссылка на родителя из первой таблицы
Две таблицы нужны, чтобы назначить ключи отсутствующим в ФИАС домам. У них нет собственного ФИАС-кода, поэтому делаем вот как:
Справочник готов, осталось протестировать. За ночь прогоняем сервис по функциональным тестам и тестируем производительность. Скорость проверяем на Москве, запрашивая все дома в радиусе трех километров. Чтобы уж наверняка. Конечно, обложили все автотестами.
Главное после обновления — чтобы не стало хуже.
Обратное геокодирование глазами пользователя
На вход метод принимает три параметра: координаты, количество результатов и радиус поиска. Радиус по умолчанию — 100 метров, максимальный — километр. Точное значение задают в настройках.
Обратно метод возвращает найденные объекты: дома, улицы и населенные пункты. При этом сортирует их по убыванию точности.
После всех этих рокировок метод наконец-то возвращает объекты, которые нашел.
Внутри — много разного о найденных объектах: строки с полным и сокращенным адресом, актуальное и устаревшие названия, почтовый индекс, ФИАС-код родительского объекта и так далее.
Все данные, которые отдает метод — в документации
Покрытие по координатам для разных регионов разное, вот так с домами:
Уже думаем, что добавить к методу: разрешить фильтрацию по типам объектов, возвращать расстояния до заданной точки, еще что-нибудь. Следим за спросом и решаем, вкладывать ли силы.
А в остальном все уже на проде. До 10 000 запросов в сутки — бесплатно, больше — по подписке от 5 000 ₽ в год. Если нужны адреса по координатам для коммерческого проекта, а «Геокодер» слишком дорог — попробуйте API «Дадаты».
Оригинал статьи опубликован в блоге HFLabs.
Поиск на карте
На Яндекс.Картах вы можете найти:
по его наименованию:
в результатах поиска по запросу [Москва], вы увидите город, реку и гостиницу «Москва» ;
по сочетанию топонима с типом объекта:
в результатах поиска по запросу [река Москва] вы увидите именно реку Москву;
по его географическим координатам:
в результатах поиска по запросу [79°30′ с. ш. 76°54′ в.д.] вы увидите остров Визе в Карском море.
Маршрут общественного транспорта ─ по его номеру и типу (например, «Автобус 39» ). Вы увидите линию маршрута и значки транспортных средств, перемещающиеся по карте в режиме реального времени (подробнее см. раздел Общественный транспорт).
При вводе запроса вы увидите поисковые подсказки, с помощью которых можно ускорить введение запроса.
Чтобы получить информацию об одном из нескольких объектов, наведите курсор на метку — строчка объекта в списке выделится желтой рамкой. И наоборот, чтобы выделить метку объекта, наведите курсор на нужную строчку в списке.
При просмотре карточки список объектов не исчезает; чтобы вернуться к нему, нажмите стрелку «назад» в поисковой строке.
Чтобы закрыть карточку объекта нажмите кнопку (в правом верхнем углу карточки).
Если вы ищете объект по географическим координатам, убедитесь, что вы вводите запрос правильно:
Количество знаков после запятой — не более семи.
Если вы хотите указать другие значения, вы можете использовать следующие варианты запроса (N или С — север, S или Ю — юг, E или В — восток, W или З — запад):
S55.777044,W37.555554 или 55.777044S,37.555554W.
Поиск на карте
На Яндекс.Картах вы можете найти:
по его наименованию:
в результатах поиска по запросу [Москва], вы увидите город, реку и гостиницу «Москва» ;
по сочетанию топонима с типом объекта:
в результатах поиска по запросу [река Москва] вы увидите именно реку Москву;
по его географическим координатам:
в результатах поиска по запросу [79°30′ с. ш. 76°54′ в.д.] вы увидите остров Визе в Карском море.
Маршрут общественного транспорта ─ по его номеру и типу (например, «Автобус 39» ). Вы увидите линию маршрута и значки транспортных средств, перемещающиеся по карте в режиме реального времени (подробнее см. раздел Общественный транспорт).
При вводе запроса вы увидите поисковые подсказки, с помощью которых можно ускорить введение запроса.
Чтобы получить информацию об одном из нескольких объектов, наведите курсор на метку — строчка объекта в списке выделится желтой рамкой. И наоборот, чтобы выделить метку объекта, наведите курсор на нужную строчку в списке.
При просмотре карточки список объектов не исчезает; чтобы вернуться к нему, нажмите стрелку «назад» в поисковой строке.
Чтобы закрыть карточку объекта нажмите кнопку (в правом верхнем углу карточки).
Если вы ищете объект по географическим координатам, убедитесь, что вы вводите запрос правильно:
Количество знаков после запятой — не более семи.
Если вы хотите указать другие значения, вы можете использовать следующие варианты запроса (N или С — север, S или Ю — юг, E или В — восток, W или З — запад):
S55.777044,W37.555554 или 55.777044S,37.555554W.
GPS координаты на карте — поиск места
Благодаря онлайн-навигаторам сегодня найти нужное место и проложить к нему удобный маршрут не составляет труда. Преимущество GPS координат заключается в том, что можно определить точное местоположение объекта, если нет определенного адреса.
Интерпретация формата
Большинство современных онлайн-карт представляют значение широты и долготы в виде десятичных дробей – в формате «градусы, доли градусов». После запятой указывается 5-6 символов для точности определения.
Обратите внимание на наличие отрицательного значения. В данном случае оно интерпретируется как:
Также можно встретить записи координат в формате «градусы, минуты, секунды» (пример – 41°24’12.2″С 2°10’26.5″В) и «градусы, минуты и доли минут» (55°38.288’С 37°28.816’В).
Как узнать текущие координаты
Определение параметров текущего местоположения на любом устройстве осуществляется в рамках трех основных этапов:
Рассмотрим, как уточнить GPS координаты на онлайн-картах на компьютере и встроенных в смартфоны навигаторах.
На компьютере
Чтобы определить координаты по текущему или иному адресу на десктопном устройстве:
Предоставление доступа к местоположению пользователя может различаться в веб-обозревателях, однако принцип действий остается тем же – в основном нужный параметр располагается в настройках веб-сайтов.
На Android
Для определения значений широты и долготы точки на Android:
Данные координат также отобразятся в строке поиска после выбора точного адреса.
На iPhone
Чтобы на мобильном устройстве с ОС IOS определить реальные координаты GPS с помощью встроенного навигатора:
На Айфоне значения широты и долготы места уточняются в отдельных графах.
Как определить координаты на онлайн-картах
Интерфейс онлайн-навигаторов может значительно различаться, что создает трудности в процессе определение точных координат нужного места. Рассмотрим несколько популярных карт и найдем соответствующий раздел.
Яндекс Карты
Чтобы узнать в Яндекс Картах координаты отметки в онлайн-версии через браузер, кликните на искомую точку. Слева появится вкладка с подробной информацией об организации – долгота, широта указываются ниже наименования и адреса места. Если координаты не указываются, попробуйте кликнуть на соседнее здание.
Для уточнения координат по нужному месту удерживайте палец на одной точке карты, затем нажмите на ссылку «Что здесь?». Кликните на соответствующую строку – значение автоматически перенесется в буфер обмена.
В десктопной версии 2ГИС поиск точки по значениям координат происходит аналогичным Яндекс Картам способом.
Чтобы узнать широту и долготу в 2GIS, укажите точку на карте и свайпните вверх нижнюю часть экрана. Информацию можно найти в соответствующем разделе.
Рекомендуется ставить курсор не на зданиях, а на ближайшем свободном пространстве – в противном случае широта и долгота не будут размещена в блоке снизу.
Навител
Вычислить координаты GPS в мобильном навигаторе Navitel можно следующим образом:
Готово – в новой вкладке будут указаны точные значения широты и долготы.
Как найти место по заданным координатам
Чтобы найти любое место по координатам GPS на онлайн-карте, в поисковой строке вместо адреса вставьте скопированное значение. Навигатор автоматически установит курсор точно на исходной точке.
Поиск по координатам GPS в картах подобных Navitel осуществляется следующим образом:
Перейдите по ссылке «Маршрут» или «Поехали», чтобы создать путь от текущей геопозиции до указанной точки.
Передача данных пользователю
Если требуется найти местоположение другому человеку, можно осуществить перевод данных GPS координат. Эта возможность предусмотрена в большинстве популярных онлайн-навигаторах. Для этого откройте параметры онлайн-карты и выберите пункт «Поделиться», выберите способ передачи информации и подтвердите действие.
В некоторых картах функция отображается, если кликнуть на конкретную точку.
Поиск с помощью компаса
Если в качестве навигатора используется стандартный ручной компас, повернитесь так, чтобы стрелка показывала на север – сопоставьте с севером бумажной карты. С помощью карты находим текущую геопозицию и требуемое место.
В каждом углу отмечаются координаты края. Отсчитайте с помощью делений искомые значения широты и долготы.
Сейчас редко возникает потребность в поиске места с помощью значений координат GPS. Однако такой способ вполне актуален, если требуется передать свое или определить местоположение на трассе или прочих местах, которые невозможно вычислить по адресу.