Тема: Как получить трек автомашины с привязкой к дороге?
Я загружаю с сервера трек автомашины через создание графического слоя с маршрутом (так я получаю только список координат без промежуточных служебных сообщений).
svc=renderer/create_messages_layer&ssid=%s&
params={"lname":"%s","rname":"%s","itemId":%d,
"timeFrom":%d,"timeTo":%d,"tripDetector":1,"trackColor":cc713cff,
"trackWidth":5,"arrows":0,"points":0,"pointColor":0,
"annotations":0,"roadLock":1}"
ответ
{"name":"tracks","bounds":[40.3350906372,49.7666091919,40.4388771057,49.8670806885],"units":[{"id":978,"msgs":{"count":2071,"first":{"time":1365015982,"lat":40.4308624268,"lon":49.7666664124},"last":{"time":1365101854,"lat":40.4308547974,"lon":49.7666778564}},"mileage":75575.5263487,"max_speed":87}]}
затем запрашиваю список соответствующих сообщений
svc=renderer/get_messages&ssid=%s&
params={"itemId":%d,"lname":"%s","rname":"%s","from":%d,"to":%d}
вот немного ответа
svc=render/get_messages: [{"t":1365015982,"f":3,"tp":"udp","l":"Ruslan Allahverdiyev, lane 7, Sulutapa","y":40.4308633,"x":49.7666666,"z":42.7,"s":0,"c":51,"sc":9,"y2":0,"x2":0,"i":0,"p":{"hdop":0.9,"io_caused":7}},{"t":1365016532,"f":3,"tp":"udp","l":"Ruslan Allahverdiyev, lane 7, Sulutapa","y":40.430895,"x":49.7666616,"z":47.5,"s":0,"c":51,"sc":9,"y2":0,"x2":0,"i":0,"p":{"hdop":1,"io_caused":7}},{"t":1365017082,"f":3,"tp":"udp","l":"Ruslan Allahverdiyev, lane 7, Sulutapa","y":40.43082,"x":49.7666633,"z":52.6,"s":0,"c":51,"sc":8,"y2":0,"x2":0,"i":0,"p":{"hdop":1,"io_caused":7}},....
всё вроде бы правильно, но я получаю трек не привязанный к дорогам, и соответственно часть трека может проходить по домам, а также содержит много "мусора" реального дорожного движения.
Соответственно вопрос, что я делаю не так? вроде параметры с именами tripDetector и roadLock проставлены правильно, но на получаемом треке это никак не сказывается.
Ещё хотел уточнить, как вообще происходит привязка к дорогам? т.е. есть ли функция которая получая (х,у) возвращает новые (х`,у`) ближайшей точки дороги.