Рендеринг карты iPhone

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

Я хочу получить небольшие изображения размером 80x80 и показать их. Этот вид деятельности может быть достигнут с помощью UIKit или OpenGL ES.

Кроме того, если вы можете довести до моего сведения какие-то достижения и руководства для этого, я был бы очень благодарен.

РЕДАКТИРОВАТЬ:

Мне нужно получить пользовательские карты для другого поставщика.

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


person y ramesh rao    schedule 23.04.2009    source источник


Ответы (7)


arrow_upward
2
arrow_downward

Для небольших статических карт можно использовать API статических карт Google.

Вы можете создать URL-адрес, чтобы получить изображение следующим образом:

NSString* urlString = [NSString stringWithFormat:@"http://maps.google.com/staticmap?center=%f,%f&zoom=%d&size=%1.0fx%1.0f&key=%s&sensor=true",
                                 aLocation.coordinate.latitude, aLocation.coordinate.longitude, // aLocation is set to the center of the map
                                   kCardBackGoogleMapsZoomLevelDefault,
                                   80, 80, // your map size
                                   kAIGoogleMapAPIKey]; // your google maps API key

Все остальные поставщики карт поддерживают статические тайлы — Microsoft, Yahoo и CloudMade.

person Rog    schedule 23.04.2009

arrow_upward
1
arrow_downward

Взгляните на эту тему: http://discussions.apple.com/message.jspa?messageID=8157498. Это почти то же самое, что вы просите.

person Sophie Alpert    schedule 23.04.2009

arrow_upward
1
arrow_downward

Что касается отображения карты прокрутки, CATiledLayer будет подходящим вариантом. Это немного сложный класс, но вы можете найти несколько примеров, если погуглите.

person U62    schedule 12.06.2009

arrow_upward
0
arrow_downward

Сможете ли вы использовать MapKit API iPhone SDK 3 или вам нужно использовать пользовательские карты?

person Alex Reynolds    schedule 23.04.2009

arrow_upward
0
arrow_downward

Если у вас есть набор пользовательских плиток, которые вы хотите загрузить, вы можете взглянуть на картографические механизмы, созданные такими компаниями, как MapNinja, которые позволяют вам использовать свои собственные наборы плиток.

В противном случае потребуется много кода, чтобы сделать что-то вроде мозаичного картографического движка самостоятельно.

person Kendall Helmstetter Gelner    schedule 23.04.2009

arrow_upward
0
arrow_downward

Если вы хотите просто встроить одну карту без прокрутки, взгляните на Google Static Maps API, который будет генерировать для вас изображения карты на лету, в зависимости от параметров вашего запроса.

Если вы хотите реализовать скользкую карту, попробуйте либо route-me, работает с OS 2.2.1 и поддерживает пользовательские тайловые серверы. Или взгляните на MapKit/Google Maps в OS 3.0.

person tomtaylor    schedule 27.04.2009

arrow_upward
0
arrow_downward

Вы также можете использовать проект Route-Me

http://code.google.com/p/route-me/

Лицензия BSD - идеально, если вам нужно визуализировать свои собственные тайлы

person FeralBob    schedule 25.06.2009