2016-08-28 3 views
1

Мне нужно отслеживать расстояние, которое посетил пользователь. Я фиксирую местоположение пользователя каждые 30 секунд, и после того, как пользователь завершил путешествие, у меня есть серия местоположений пользователя пути.API Карт Google: найти расстояние от

Мне нужно найти расстояние до пути, используя записанные местоположения. Я попытался использовать distance matrix API, но я не могу измерить полное расстояние, используя один вызов API. Я должен измерить расстояние между каждым последующим местоположением и добавить их, чтобы получить общее расстояние.

Есть ли более простой способ сделать это?

+0

Вы можете использовать карту соответствия: https://en.wikipedia.org/wiki/Map_matching Есть также интерфейсы для него – Karussell

ответ

0

Вы можете попытаться проверить Directions API, если он может делать то, чего вы хотите достичь. Если Distance Matrix API - это сервис, который обеспечивает расстояние и время проезда для матрицы происхождения и адресатов, API-интерфейс Directions - это служба, которая вычисляет направления между местоположениями. Но он также содержит информацию, такую ​​как расстояние и продолжительность путешествия.

Вот пример запроса с использованием Directions API:

https://maps.googleapis.com/maps/api/directions/json?origin=Dodger%20Stadium,%201000%20Vin%20Scully%20Ave,%20Los%20Angeles,%20CA%2090012,%20United%20States&destination=STAPLES%20Center,%201111%20South%20Figueroa%20Street,%20Los%20Angeles,%20CA%2090015,%20United%20States&key=YOUR_API_KEY 

Просто посмотрите на ноги и шаги части. Эти два являются частью путевых точек, которые могут дать вам небольшую информацию о направлениях.

  • legs[] содержит массив, который содержит информацию о отрезке маршрута между двумя точками на заданном маршруте. Отдельная нога будет присутствовать для каждой указанной точки маршрута или пункта назначения. (Маршрут без путевых точек будет содержать ровно одну ногу в массиве ножек.) Каждая нога состоит из нескольких этапов.

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

  • steps[] содержит множество этапов, обозначающих информацию о каждом отдельном шаге пути.

    Каждый элемент массива шагов определяет один шаг вычисленных направлений. Шаг - это самая атомная единица маршрута направления, содержащая один шаг, описывающий конкретную единую инструкцию по путешествию. Например. «Поверните налево на IV улице Св. Этот шаг не только описывает инструкцию, но также содержит информацию о расстоянии и длительности, относящуюся к тому, как этот шаг относится к следующему этапу. Например, шаг, обозначенный как «Слияние на I-80 West», может содержать продолжительность «37 миль» и «40 минут», указывая, что следующий шаг составляет 37 миль/40 минут от этого шага.

Просто прочитайте документацию о API-интерфейсах Directions, чтобы узнать больше об этом и о том, что вы можете сделать для этого API. Надеюсь, я дам вам небольшое представление об этом. Goodluck :)

Смежные вопросы