2017-01-31 26 views
9

У меня есть граф G с n узлами. Граф встроен в 2D-пространство (так что между каждой парой узлов имеются четко определенные углы и расстояния). Некоторые узлы могут быть связаны с ребрами с другими узлами. Учитывая местоположение L, этот график должен быть выложен поверх карты, близкой к L, так что каждый узел становится маркером на карте и таким образом, что между каждой парой подключенных узлов есть проходной путь. Поскольку это будет невозможно в большинстве случаев, я позволю графу масштабироваться/поворачиваться, и я буду использовать расстояния и углы между узлами, чтобы быть гибкими в определенном диапазоне.Получить доступ к данным улиц в iOS

Для того, чтобы написать этот конкретный алгоритм, мне нужно будет иметь определенную информацию о улицах около L. Кто-нибудь знает, чтобы получить уличные данные в виде структуры графа (чтобы я мог ходить по дорогам)? Я знаю, что API Карт Google позволяет вам набирать маршруты между двумя точками, но я уверен, что не могу просто продолжать прохождение без каких-либо затрат.

Редактировать: Я читал немного о API OpenStreetMap. Похоже, это может быть интересно. Возможно, люди тоже могут прокомментировать это.

+1

я использовал этот GEONAMES сервис на основе OpenStreetMap для аналогичной задачи, если она может иметь некоторую помощь: HTTP: // www.geonames.org/maps/osm-reverse-geocoder.html#findNearbyStreetsOSM –

ответ

1

Наборы данных TIGER предлагают файл формы/линии для США, бесплатно. Множество вариантов, включая дороги. https://www.census.gov/geo/maps-data/data/tiger-line.html

+0

спасибо, это выглядит очень полезно. я вернусь сюда, если я в конечном итоге использую его в своем проекте. –

2

Вы также можете проверить эти сайты для osm и открывать данные gis.

OpenStreetMap Экстракты, here

OpenStreetMap получены данные, here

ГИС Наборы данных, here

в дополнение к этим;

Planet.osm/дифференциалы here

я надеюсь, что это помогает ...

+0

В основном эти данные в разных форматах, которые вам нужно будет преобразовать самостоятельно, но в основном это вернулось в формате XML или в какой-то форме GeoJson –