2016-05-27 1 views
1

Я хотел бы использовать здесь android sdk, чтобы следить за маршрутом, который имеет много путевых точек (чтобы направлять сборщик мусора по всем дорогам окрестности).Как перемещаться по более чем 32 путевым точкам?

Проблема заключается в том, что когда я добавляю более 32 путевых точек к RoutePlan, расчет не выполняется с ошибкой «IllegalArgumentException: достигнуто максимальное число (32) путевых точек, разрешенных для расчета маршрута».

Есть ли способ устранить это ограничение?

+0

Невозможно сделать это, насколько я знаю. То, что вы можете сделать, это сохранить все ваши путевые точки в стеке, а затем, когда маршрутные точки будут уничтожены, вы удалите их и добавьте новый из стека. –

+0

Итак, я получил этот текст со своего сайта «Примечание. Маршруты с более чем 100 путевыми точками могут потребовать значительного времени вычисления». Я уверен, что это возможно, если они это скажут. Ссылка находится здесь https://developer.here.com/mobile-sdks/documentation/android/topics/routing.html – Neil

+0

@SorinLascu Вот как я делаю это прямо сейчас, но мне нужно остановить навигацию и перезапустить ее с помощью новый RoutePlan. Можете ли вы это сделать без перезапуска навигации? – Teriblus

ответ

2

Извините, это ограничение жестко закодировано в маршрутизаторе. Ресурс вычислений, необходимый для вычисления> 32 путевых точек на мобильном устройстве, чрезвычайно высок.

Что вы можете сделать, это вычислить два маршрута отдельно. IE Сегмент 1 путевых точек 1-32 и сегмент 2 путевых точек 32-64 и т. Д.

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

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

+0

Есть ли способ конкатенации предварительно вычисленных объектов MapRoute? – Teriblus

2

Это ограничение было изменено с SDK 3.3. Теперь мы разрешаем до 128 путевых точек.

@Teriblus, нет способа объединить объекты MapRoute.

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

  • Нет связанных вопросов^_^