Редактирование развязок

Содержание

Редактирование развязок - возможность нанесения и редактирования на карте города дорожных развязок в программном модуле "Map Editor" (далее МЕ). Режим редактирования развязок требуется для нанесения на карту и редактирования существующих направлений движения вдоль улиц города. Развязки представляются в виде связанного ориентированного графа. 

Окно МЕ в режиме редактирования развязок

Режимы работы с развязками

На вертикальной панели слева от карты есть следующие режимы для работы с развязками:

ИконкаКомбинация "горячих" клавишНазваниеОписание


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

[Ctrl + 2]Переместить узелДля перемещения узла необходимо выбрать его, кликнув левой кнопкой мыши, он "приклеится" к курсору, и ещё раз кликнуть левой кнопкой мыши в месте, куда узел нужно переместить, чтобы закрепить новое местоположение.

[Ctrl + 1]Добавить узел

В режиме добавления операция прокладки пути продолжается до тех пор, пока не будет нажата кнопка [Esc]. При добавлении новых ребер возможно "прилипание" вершин нового ребра к уже существующим (при попадании в окружность требуемой вершины).

[Ctrl + 3]Удалить узелДля удаления узла нужно выбрать и кликнуть на лишнее ребро или вершину. При наведении курсора на узел он подсвечивается синим. При удалении вершины удаляются также все входящие и выходящие из нее ребра.

[Shift + 3]Очистка областиДля очистки области необходимо сначала ее задать. Область задается произвольной формы между точками на карте (наносятся нажатием левой кнопки мыши). Последняя точка должна совпадать с первой. После этого узлы, попавшие в область, будут подсвечены синим и появится окно подтверждения их удаления.

[Ctrl + D]Снять выделениеСнимает цветовое выделение развязок после проверки их корректности.

[Shift + Ctrl + T]Проложить маршрут

Для прокладки маршрута по развязкам необходимо кликнуть левой кнопкой мыши в двух местах карты: в начале и в конце маршрута. Режим помогает оценить правильность созданных развязок и подобрать коэффициент пересчета расстояния.

[Ctrl + T]Тест корректности развязокОпределяет соответствие созданных развязок критериям.

[Ctrl + Z]ОтменитьОтменяет последнее действие режимов Переместить, Добавить, Удалить узел.

Добавление узлов

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

Передвигать карту можно при зажатой правой кнопке мыши. При нажатии правой кнопки мыши появляется выпадающее меню со следующими кнопками:

ИконкаКомбинация "горячих" клавишНазваниеОписание

[Ctrl + H]Скрыть курсорВключает/выключает отображение курсора. Есть не во всех режимах.

[Ctrl + Z]ОтменитьОтменяет последнее действие режимов Переместить, Добавить, Удалить узел.

[Esc]Прервать действиеЗавершает прокладку пути.


Закрыть менюЗакрывает выпадающее меню без каких-либо действий.

При прокладывании пути следует помнить о:

  • Направление движения. Если движение правостороннее, то в стрелки ребер графа, совпадающие с направлением движения, должны быть по правую сторону улицы (область "1" на рисунке) и наоборот (область "2" на рисунке). Также движение на перекрестках при правостороннем движении должно быть против часовой стрелки (область "1" на рисунке), а при левостороннем - по часовой стрелке (область "2" на рисунке).
  • Ширина улицы. Если улица узкая, имеет смысл провести путь по центру с двунаправленными ребрами графа (область "3" на рисунке).
  • Возможность смены пути при пересечении
    • Если пути пересекаются и в точке пересечения можно поменять путь (свернуть с одной улицы на другую), но в этой точке нет вершины, то ее можно добавить не прерывая построения пути, нажав на ребро в точке пересечения (ребро будет подсвечено синим). Тогда ребро разобьется на два автоматически.
    • Если пути пересекаются, но в точке пересечения нельзя поменять путь (например, движение по мосту и проезд под мостом), то в точке пересечения не должна стоять вершина графа (область "4" на рисунке).
  • Корректность графа. Граф развязок считается корректным, если между любыми двумя точками можно проложить путь. Поэтому не должно быть оторванных подграфов и вершин, из которых только выходят или в которые только входят направления движения (ребра). 

Тест корректности развязок

Тест корректности развязок может выдать следующие ошибки: 

  1. Обнаружены узлы () не имеющие входных или выходных ребер. В скобках указывается количество ошибок такого типа. При нажатии кнопки ОК МЕ показывает один из узлов с ошибкой. МЕ не покажет следующую ошибку пока предыдущая не будет исправлена.
  2. Обнаружены несвязанные графы. Если на одной карте имеются два или больше графа, не связанных между собой, появится данная ошибка. При нажатии кнопки ОК МЕ выбирает больший граф, принимая его за основной, и подсвечивает его синим, а все меньшие графы, оторванные от основного, подсвечиваются красным. МЕ не покажет следующую ошибку пока предыдущая не будет исправлена.

После исправления всех ошибок появится сообщение "Тест корректности развязок успешно завершен".

Если тест корректности не будет завершен, программный модуль "Такси Навигатор" не будет работать.

Построение маршрута и подбор коэффициента пересчета расстояния

Для построения маршрута необходимо войти в режим прокладки маршрута , кликнуть мышкой на карте в месте начала маршрута и еще раз кликнуть в конце. При этом откроется окно "Подбор коэффициента пересчета расстояния" со следующими полями:

  1. Расстояние - фактическое расстояние, рассчитанное по данной карте.
  2. Коэффициент - коэффициент масштабирования, общий для всей карты. Его можно загрузить из БД Firebird  и сохранить в нее .
  3. Расстояние в км. - пересчитанное расстояние.

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