Карта

Главный экран — карта тепловой сети города: участки, узлы, источники и потребители поверх подложки. Сверху — строка с городом и ролью, кнопками расчёта, протокола и выгрузки, поиском и меню пользователя.

Где найти
открывается сразу после входа.
Функция показана в сквозном сценарии:Первый вход и карта
Читаю как

Возможности

  • Колесо мыши — масштаб, перетаскивание — сдвиг, правая кнопка с перетаскиванием — поворот и наклон; на телефоне — двумя пальцами.
  • Щелчок по объекту сети — краткая сводка в точке щелчка, из неё «Карточка» со всеми полями (Карточка объекта). Если в точке несколько объектов (подача и обратка, узел и участок), сначала появится меню «Выберите объект» (стрелки ↑↓ и Esc).
  • Строка режимов над картой — «Измерения», «Редактировать топологию сети» (только с правом правки), «Пьезометрический график», «Информация об объекте». Одновременно включён один режим, повторное нажатие выключает его.
  • Легенды внизу карты: раскраска результата расчёта и тематической карты, у каждой — крестик «убрать».
  • Карта обновляется сама, когда данные изменились (правка в вебе или десктопе, расчёт): см. Кто на карте.

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

Из чего состоит карта. Подложка (MapTiler или OpenStreetMap) снизу, над ней слои контекста (здания, рельеф), внешние слои других серверов, затем слои тепловой сети: участки, узлы, камеры, источники, потребители. Слои сети — векторные тайлы из базы города (через GeoServer или martin). Показываются только объекты выбранных фрагментов (вкладка «Фрагменты» панели слоёв).

Выбор объекта щелчком. Ищутся объекты сети в радиусе 8 пикселей от точки щелчка (14 — на сенсорном экране); узлы и трубы важнее площадных объектов. Если несколько объектов на одинаковом расстоянии (в пределах 3 пикселей), появляется меню выбора. Если сети рядом нет, запрашиваются сведения о здании под курсором.

Наведение. В режиме «Информация об объекте» объект сети под курсором подсвечивается. Атрибуты зданий и рельефа без щелчка показывает «Режим наведения (атрибуты)» в панели слоёв.

Что нужно для работы

  • Вход в систему; для подложек MapTiler — ключ у веба (без него — OpenStreetMap).
  • Сервер тайлов сети (GeoServer или martin) доступен из браузера.

Шаги

  1. Карта после входа: слева панель «Слои», справа — инструменты (открываются кнопкой с чемоданчиком). Тёмно-бордовые линии — участки тепловой сети, значки — камеры, насосные и источники.

    Карта: шаг 1

  2. Верхняя строка: город и роль, «Расчёт», «Протокол», «Выгрузка», поиск (Ctrl+K), панель инструментов, «Кто на карте», меню пользователя.

    Карта: шаг 2

  3. Крестик закрывает панель «Слои» — карта займёт весь экран; вернуть панель — кнопка со стопкой листов слева вверху. Кнопки над картой: «Измерения» (расстояние и площадь), «Редактировать топологию сети», «Пьезометрический график», «Информация об объекте» (в этом режиме щелчок по объекту показывает его свойства).

    Карта: шаг 3

  4. Кнопки справа: «Начальный вид» (весь город), «Скопировать ссылку на этот вид карты» — ссылка откроет карту в том же месте и с теми же слоями, «Моё местоположение», переключение 2D/3D, «Базовый слой» (подложка), ниже — масштаб «+» и «−».

    Карта: шаг 4

  5. Крупный масштаб: подписи улиц и домов подложки, участки сети с подписями узлов. Внизу слева — масштабная линейка, по центру — координаты под курсором; нажмите «WGS84», чтобы выбрать другую систему координат, кнопка рядом копирует координаты.

    Карта: шаг 5

Если не получается

  • Сети на карте нет — не выбран ни один фрагмент (вкладка «Фрагменты» → «Применить») или карта слишком мелкая: распределительная сеть рисуется с масштаба 12.
  • Щелчок по трубе ничего не открывает — выключена «Информация об объекте» или включены «Измерения».
  • Карта серая без подложки — нет связи с сервером подложки или ключа MapTiler.

Для разработчика

  • Веб: components/MapViewer.vue, stores/mapStore.ts (карта, наведение, identifyFeature), stores/layerStore.ts (слои сети, адреса тайлов с версией данных), utils/mapPick.ts (выбор в точке), components/FeatureMenu.vue, components/MapPopover.vue, легенды — MapLegend.vue, ThematicLegend.vue.
  • Тесты: tests/utils/mapPick.spec.ts, tests/components/MapPopover.spec.ts; e2e — e2e/functions.spec.ts, e2e/functions/map.spec.ts.
Хотите увидеть эту функцию на своих данных?Покажем ТГИД на демонстрации и ответим на вопросы инженеров.
Запросить демо