Создать файл KML в приложении для iphone

В моем приложении я должен нарисовать маршрут между местоположением пользователя и местом назначения в MKMapView с помощью классов MKAnnotation и MKOverlay. Я просмотрел пример кода KMLViewer от Apple, там они упомянули, что создают файл KML вне этапов программирования, но мне нужно генерировать файл KML внутри программирования приложений для iPhone.

Является ли это возможным? и мне нужна помощь в этом..

Действия для получения файла KML вручную

Процесс получения KML выглядит следующим образом:

  • Перейдите по адресу: "http://maps.google.com/"
  • Щелкните ссылку "Проложить маршрут"
  • Введите начальный и конечный адреса (например): Начальный = 451 University Avenue, Palo Alto, CA 94301 Destination = #1 Infinite Loop, Cupertino, CA 95014
  • Измените маршрут по своему усмотрению.
  • Нажмите «Ссылка» на ссылку на эту страницу.
  • Скопируйте ссылку на электронную почту/мгновенное сообщение.
  • Вставьте ссылку обратно в адресную строку Safari.
  • Добавьте &output=kml в конец URL-адреса и нажмите клавишу ввода.
  • Файл KML будет загружен в папку «Загрузки».

но мне нужно, чтобы это было сделано программно...


person The Debugger    schedule 28.04.2011    source источник


Ответы (1)


KML — это просто XML, и в Cocoa существуют различные методы создания XML-файлов, например. используя KissXML.

Формат KML задокументирован здесь: http://code.google.com/apis/kml/documentation/kmlreference.html.

person omz    schedule 28.04.2011
comment
Спасибо, что прояснили некоторые моменты в моих вопросах. Файл KML, который я создаю с сайта map.google.com, просто с помощью методов Get Direction, вы предлагаете мне использовать API-интерфейс получения направления из карты google для создания KML или есть какие-либо другие способы получить KML из карты google так же просто, указав два названия местоположений. - person The Debugger; 28.04.2011
comment
API Directions не предоставляет данные в формате KML. Вы можете получить JSON или собственный формат XML. Используя последний, должно быть относительно легко адаптировать синтаксический анализатор в примере кода Apple. См. code.google.com/apis/maps/documentation/directions/#XML. - person omz; 28.04.2011
comment
Да, omz, это то, что я собираюсь сделать сейчас, но мне нужен выходной ответ KML вместо JSON/XML. Методы класса KMLParser выполняют большую часть работы и возвращают только два массива: наложения для рисования маршрута и точки для аннотаций. @omz Я ищу библиотеки классов, которые генерируют файл KML из ответа XML или получают файл KML непосредственно из map.google.com программно. - person The Debugger; 28.04.2011
comment
привет Картик, ты решил это? что ты в итоге сделал? Я пытаюсь сделать то же самое - person Paul; 20.09.2011