Вопрос

Я разрабатываю приложение, имеющее две версии.Один для Интернета, другой для iPhone.

В веб-приложении я могу нарисовать маршрут по дороге (автоматическое рисование маршрута по дорогам/автомагистралям) и по бездорожью (провести прямую линию между двумя конкретными точками).

Есть ли API для iPhone, который можно использовать для рисования маршрута на карте?Я могу нарисовать на карте прямую линию между двумя узлами, но не могу нарисовать маршрут на карте дорог в iPhone.

Я использую iPhone 3.0 и SDK 3.0.

Спасибо.

Это было полезно?

Другие советы

в iOS4 есть новый API под названием MKOverlayPathView, который делает именно это.MKOverlayPathView

Я просто хотел обновить этот пост этой информацией, чтобы люди поняли всю историю.

  1. используйте этот URL для создания файла json/xmlhttp://maps.googleapis.com/maps/api/directions/output?parameters (для получения дополнительной информации прочитайте code.google.com/apis/maps/documentation/directions/)

  2. проанализировать файл json/xml

  3. в маршрутах - отрезках - шагах - полилинии вы можете видеть точки в закодированном формате.

  4. расшифровать эти точки (см. http://fkn1337.com/decode-google-maps-polylines-objective-c/) и создайте массив CLLocationCoordinate2D.

  5. Использовать

(MKPolyline *)polylineWithCoordinates:(CLLocationCoordinate2D *)количество координат:(NSUInteger)count

для создания объекта MKPolyline

6. Используя addOverlay MKMapview, мы можем создать наложение с указанием направления.

К сожалению, в версии 3.0 для этого нет API.Вероятно, вам придется добавить наложение на MKMapView, но это, вероятно, очень утомительно.

Стандартный способ на iPhone (поскольку в лицензии MapKit есть ограничения) — использовать [[[UIApplication sharedApplication] delegate] openURL:myURL]; чтобы открыть приложение «Карты».

мойURL — это 'http://maps.google.com/maps?...' URL-адрес (объект NSURL) с подмножеством параметров, поддерживаемых в документации на сайте Developer.apple.com.Вы используете параметры saddr= и Daddr=, чтобы задать начальный и конечный адрес (или координаты) маршрута, а затем пользователь может увидеть маршрут и использовать текстовые указания для вождения, езды на велосипеде или ходьбы в приложении «Карты» для перемещения по маршруту.Возможно, на iPhone 4 GM вы сможете вернуться к своей программе, но в настоящее время открытие URL-адреса закроет ваше приложение и вместо этого запустит приложение «Карты» (или Safari, если «Карты» не установлены).

Некоторым дополнением к вопросу может быть:КАК МОЖНО ДИНАМИЧЕСКИ ПОЛУЧИТЬ ТЕ КООРДИНАТЫ, КОТОРЫЕ ИСПОЛЬЗУЮТСЯ ДЛЯ НАРИСОВАНИЯ ПУТИ, В ПРИМЕРЕ MapLinesAndAnnotations Крейга Спитцкова....?(Получение координат между двумя местами с карт Google).

Используйте следующую ссылку: КартаСМаршрут

Надеюсь, это поможет вам проложить маршрут, используя два определяемых пользователем местоположения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top