ЗДЕСЬ API Карт;before: ограничение назначения игнорируется в запросе findsequence - PullRequest
0 голосов
/ 10 октября 2019

Я использую https://wse.api.here.com/2/findsequence.json

Вот мои параметры запроса:

mode=fastest;car;traffic:disabled&departure=2019-10-10T15:39:28+03:00

А вот тело:

destination4=4;38.792417,-77.30097;acc:th00:00:00+03:00|fr00:00:00+03:00;st:180
&destination5=5;38.792344,-77.299805;before:destination4;acc:th00:00:00+03:00|th19:00:00+03:00;st:180&start=user;38.776573,-77.275411&destination7=7;38.804577,-77.279514;before:destination5;acc:th00:00:00+03:00|fr00:00:00+03:00;st:180

Вот что у меня естьв ответе:

{"results": [{"waypoints": [{"id": "user", "lat": 38.776573, "lng": - 77.275411, "sequence": 0, "estimatedArrival": нулевой, "estimatedDeparture": "2019-10-10T14: 09: 49 + 03: 00", "fulfilledConstraints": []}, { "ID": "5", "ш":38.792344, "LNG": - 77,299805, "последовательность": 1, "estimatedArrival": "2019-10-10T14: 15: 44 + 03: 00", "estimatedDeparture": "2019-10-10T14: 18: 44+03:00" , "fulfilledConstraints": [ "АСС: th00: 00: 00 + 03: 00 | fr19: 00: 00 + 03: 00; St: 180", "перед: destination4"]}, { "идентификатор": "4", "ш": 38,792417, "LNG": - 77,30097, "последовательность": 2, "estimatedArrival": "2019-10-10T14: 19: 21 + 03: 00", "estimatedDeparture": "2019-10-10T14: 22: 21 + 03: 00" , "fulfilledConstraints": [ "АСС: th00: 00: 00 + 03: 00 | fr00: 00: 00 + 03: 00; й: 180"]}, {"идентификатор": "7", "ш": 38,804577, "LNG": - 77,279514, "последовательность": 3, "estimatedArrival": "2019-10-10T14: 28: 19 + 03: 00", "estimatedDeparture": нулевой, "fulfilledConstraints": [ "акк: й00: 00: 00 + 03: 00 | fr00: 00: 00 + 03: 00; St: 180" , "перед: destination5"]}], "расстояние": "7548", "время": "1290","межсоединения": [{ "fromWaypoint": "пользователь", "toWaypoint": "5", "расстояние": 3626,0, "время": 355,0, "отдых": 0.0, "ожидания": 0.0}, { "fromWaypoint":" 5" , "toWaypoint": "4", "расстояние": 191,0, "время": 37,0, "отдых": 0.0, "ожидание": 0,0}, { "fromWaypoint": "4", "toWaypoint":" 7 "," расстояние ": 3731,0," время ": 358,0," отдых ": 0,0," ожидание ": 0,0}]," описание ":" Целевое наилучшее расстояние;без трафика "," timeBreakdown ": {"нообразие": 750, "обслуживание": 540, "отдых": 0, "ожидание": 0}}], "ошибки": [], "processingTimeDesc": "78мс", "responseCode": "200", "warnings": null, "requestId": null}

Как вы можете видеть, у меня есть before ограничение в destination7 и destination5 но это игнорируется. Я что-то делаю неправильно?

1 Ответ

1 голос
/ 11 октября 2019

У вас есть следующие путевые точки: start, destination4, destination5 и destination7 с ограничениями: destination5 до destination4 и destination7 до destination5. Теперь вы не указали end путевую точку, поэтому алгоритм выбрал одну из путевых точек в качестве end для достижения оптимальных результатов (в этом случае destination7 была выбрана в качестве конечной путевой точки, которая затем переопределяет ограничение). Пожалуйста, укажите end путевую точку, и другие ограничения будут выполнены. Ссылка из документации:

destinationN: промежуточные пункты назначения, по крайней мере, один. Если конечный параметр не указан, одно из этих значений выбирается в качестве конца последовательности.

https://developer.here.com/documentation/mobility-on-demand-toolkit/topics/determining-optimal-delivery-sequence.html

...