1

Расстояние между Пунктами

Topic: Расстояние между Пунктами

Здравствуйте! Возник вопрос:
Допустим автомобиль движется по маршруту Брест-Москва-Брест-Варшава-Брест
Известно время начала и конца маршрута, нужно узнать какое было пройдено расстояние на каждом участке, т.е. Брест-Москва - 200; Москва-Брест-280; Брест-Варшава-50; Варшава-Брест-60.
Пока пришла только идея на заданном временном интервале парсить контрольные точки, по ним определять время нахождения в городе и смотреть расстояние, но это наверняка не верный подход.

http://pastebin.com/e0htyMuH - пример запроса

Если не трудно, в формате запроса либо сам алгоритм подскажите. Спасибо.

2

Расстояние между Пунктами

Re: Расстояние между Пунктами

Добрый день

Можно попробовать следующую схему
- в пунктах назначения построить геозоны
- получить данные из отчёта "Поездки между геозонами"

Для начала можно это логику проверить прямо в интерфейсе, если данных достаточно - вся информация вытягивается с помощью report/exec_report и report/get_result_rows

3

Расстояние между Пунктами

Re: Расстояние между Пунктами

shmi wrote:

Добрый день

Можно попробовать следующую схему
- в пунктах назначения построить геозоны
- получить данные из отчёта "Поездки между геозонами"

Для начала можно это логику проверить прямо в интерфейсе, если данных достаточно - вся информация вытягивается с помощью report/exec_report и report/get_result_rows

Мы не знаем время прибытия в каждую контрольную точку(Москва, Брест, Варшава), только время выезда и возвращения. И ко всему этому, машина может проезжать один отрезок несколько раз за рейс.

Мой алгоритм:

Собираем координаты положения машины, сравниваем с координатой первой контрольной точки, если расстояние между ними меньше N-километров - узнаем время в этой координате и за временной интервал получаем расстояние. И так дальше по всем контрольным точкам. Но время обработки тысяч сообщений для парсинга координат оставляет желать лучшего. Надеемся на помощь, спасибо!

4

Расстояние между Пунктами

Re: Расстояние между Пунктами

qqwkaman wrote:

Мы не знаем время прибытия в каждую контрольную точку(Москва, Брест, Варшава), только время выезда и возвращения. И ко всему этому, машина может проезжать один отрезок несколько раз за рейс.

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

qqwkaman wrote:

Мой алгоритм:
Собираем координаты положения машины, сравниваем с координатой первой контрольной точки, если расстояние между ними меньше N-километров - узнаем время в этой координате и за временной интервал получаем расстояние. И так дальше по всем контрольным точкам. Но время обработки тысяч сообщений для парсинга координат оставляет желать лучшего.

На мой взгляд излишне сложно и требует самостоятельного получения/обработки очень большого количества данных

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