Александр Картавцев
продакт 2GIS.Kit
Новое в 2GIS.Kit
Расскажем о том, что нового мы выпустили в рамках 2GIS.Kit — нашего инструмента для решения задач, связанных с картографическими сценариями.
Mobile SDK
В прошлом номере мы рассказывали о публичном релизе Mobile SDK и о релизе SDK в Сбербанк Онлайн. Написали об этом пресс-релиз и выкатили большую статью на vc.ru.

Публичный релиз состоялся, но мы не стоим на месте и уже подготовили следующую версию. В версии 1.1 можно кастомизировать элементы карты с помощью редактора стилей.

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

Ещё мы добавили построение маршрутов пешком внутри SDK.
Напомню, что подробная документация о Mobile SDK лежит здесь: iOS, Android.
MapGL JS API
Наши любимые web-карты продолжают активно развиваться. Маркерам добавили возможности кастомизации, например, добавить подпись или сделать так, чтобы иконка менялась при наведении.
Если вы пользуетесь html-маркерами, то наверняка заметили: когда курсор попадает в маркер, и пользователь хочет подвинуть карту, то отрисованный маркер не позволяет ему это сделать. Теперь можно сделать так, чтобы пользователь мог двигать карту сквозь маркеры — управляйте сами тем, что важнее.
А ещё в кластеризаторе появилась возможность налету менять внешний вид кластеров.
Редактор стилей
Давно ничего не писали про редактор стилей. А работу по нему мы не прекращали.

Пожалуй, главное достижение — это поддержка Mobile SDK в редакторе стилей. SDK, как я уже писал выше, появился в паблик-версии и в нём тоже можно настраивать стили с помощью редактора.

Помимо этого, доставили ряд важных фич. Ремарка: несмотря на то, что редактор один и для веб-карт, и для Mobile SDK, поддержка фич на платформах может немного разъезжаться, потому что в этих продуктах используются принципиально разные движки для отрисовки карты. Поэтому в скобках указали платформу, на которой поддержка уже вышла. Конечно, работаем над тем, чтобы все фичи были доступны на обеих платформах. Итак, к делу!

Поддержали пользовательские шрифты (Mobile SDK).
Дали возможность подключить растровую карту из любого источника в SDK. Редактор в настройках позволяет:

  • подключить растровый слой над или под векторными слоями;
  • настроить масштаб их появления на карте;
  • управлять видимостью слоя от разных условий;
  • настроить их прозрачность.

Как их подключить в коде приложения — описали в документации для Android/iOS SDK.

Ещё мы добавили атрибут интерактивности слоя (Mobile SDK). На карте не все объекты, которые мы видим, должны быть кликабельны. Например, кликабельность не нужна для подписей районов, номеров домов или светофоров. Теперь это поведение можно настроить в редакторе.

Для точечных слоёв добавили новые атрибуты в редакторе:

  • максимум символов в строке (MapGL JS API, Mobile SDK);
  • максимум строк в тексте (пока только для Mobile SDK).
И плюшка, которую тоже давно ждали, — copy/paste настройки слоёв в другой стиль. Это упрощает работу с редактором.
Navi
Сервисы роутинга также обзавелись двумя новыми историями.

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

Основная задача этого сервиса — проецировать треки пользователя на реальную дорожную сеть, чтобы восстановить траекторию его движения. Такая задача популярна, чтобы анализировать ситуацию на дороге, оценить точное время в пути на участке дороги и отфильтровать погрешности GPS-приёмников. Вот как это работает.
MapMatching применяют в основном в такси, логистике и любых перевозках. Основная информация, которая поступает с устройства, — это трек, состоящий из GPS-точек. Мы поможем преобразовать GPS-трек в правильную последовательность звеньев дорожной сети.

Но есть ограничения:

  • пока этот алгоритм работает только для автомобильной маршрутизации;
  • трек восстанавливается только внутри городов, где есть 2ГИС;
  • максимальное количество точек в одном запросе — не более 1000;
  • время фиксации между соседними точками строго от одной до десяти секунд.

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

Второй сервис роутинга — это API построения проезда на общественном транспорте. Мы уже умеем строить проезд на авто, пешком и даже на грузовиках. Но в самом продукте 2ГИС можно построить маршрут и на общественном транспорте. Сервис предполагает проезд на автобусе, троллейбусе, трамвае, метро и других типах транспорта, которые работают в том или ином городе.

Наши партнёры очень просили добавить эту возможность в API — и мы это сделали! Планы на будущее — затащить это вовнутрь Mobile SDK.

На этом у нас всё, оставайтесь с нами!
Нажимая кнопку «Комментировать», я даю ООО «ДубльГИС» согласие на обработку персональных данных на условиях и в целях, определённых «Политикой конфиденциальности».