Что такое совместная карта?

Совместная карта — это одна карта, которую несколько человек одновременно смотрят на своих устройствах, словно друзья склонились над одной бумажной картой. Когда кто-то перемещает карту или меняет масштаб, карта у всех движется так же, а указатель каждого пользователя отображается на экранах остальных вместе с его именем. Поэтому слова «вот эта улица» у всех обозначают одно и то же место.

Такая карта помогает планировать что-либо, связанное с определённым местом, даже если вы находитесь в разных местах: выбирать точку встречи, объяснять другу маршрут или вместе рассматривать район во время звонка.

Описание инструмента

Этот инструмент — карта OpenStreetMap, которой пользуются все участники комнаты. Откройте её, отправьте ссылку, и каждый, кто перейдёт по ней, увидит тот же участок карты. Любой участник может перемещать карту и менять масштаб — изменения отобразятся у всех, а указатель каждого пользователя будет виден остальным.

Учётная запись не нужна: комната создаётся при открытии страницы. На панели рядом с картой отображаются участники и находится чат.

Возможности

  • Единый вид для всех — перемещение карты перетаскиванием, прокрутка колёсика мыши, кнопки + и - и клавиши со стрелками перемещают карту у всех участников комнаты
  • Указатели в реальном времени — указатель каждого участника отображается его цветом и с его именем; при касании экрана телефона показывается место касания
  • Указатели за пределами экрана — на небольшом экране указатель, оказавшийся за пределами видимой области карты, отображается у её края и указывает на своё местоположение

Как это работает

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

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

Ограничения

  • В комнате может быть не более 20 человек.
  • Карта всегда показывает общий вид комнаты. Чтобы осмотреться самостоятельно, выйдите из комнаты — карта останется на прежнем месте.
  • Данные не сохраняются. Когда все участники выйдут, комната исчезнет.

Советы

  • После перезагрузки страницы вы останетесь в той же комнате, и на карте будет отображаться её текущий вид.
  • Указатель отображается, только пока находится над картой. Переместите его за пределы карты, чтобы скрыть.