Skip to content

Граф дорог Нижнего Тагила

Notifications You must be signed in to change notification settings

magauran/RoadGraph

Repository files navigation

RoadGraph

Построение графа дорог Нижнего Тагила на основе данных проекта OpenStreetMap

Результаты

Инструкция по запуску (только Mac OS)

  1. git clone https://github.com/magauran/RoadGraph
  2. cd RoadGraph/
  3. pod install
  4. open RoadGraph.xcworkspace
  5. ⌘R

Алгоритм

  1. Получение карты города в формате .osm (OpenStreetMap XML)

  2. Парсинг xml-файла при помощи библиотеки SWXMLHash

    • Оставляем только пути с тегами "motorway", "motorway_link", "trunk", "trunk_link", "primary", "primary_link", "secondary", "secondary_link", "tertiary", "tertiary_link", "unclassified", "road" и "residential".
  3. Подготовка графа:

    • Все вершины сохраняем в Dictionary<String, OSMNode>.
    • Все рёбра сохраняем в Set<OSMNode>.
    • Для каждой вершины находим и сохраняем "соседние" вершины.
    • Удаляем все изолированные вершины.
  4. Сохранение списка смежности и списка рёбер в формате .csv

  5. Визуализация графа

    • Преобразовываем координаты из географической системы координат в прямоугольную.
    • Преобразовываем координаты в систему координат рисунка.
    • Генерируем svg-файла (либо svg + html).
    • Отображаем html-файла в WKWebView.

Скриншот

alt-текст

About

Граф дорог Нижнего Тагила

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published