SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Yahoo! Open Local Platform Hacks

YOLP Hacks: iOS Map SDKの使い方
~スライドショーアプリを30分で作る!

Yahoo! Open Local Platform Hacks 第3回

日本国内の山一覧(3,000m以上)ファイルを作成

 まずスライドショーで表示する場所を指定するために、日本国内の山(3,000m以上)をリスト化し、それぞれの山に緯度経度を付与してYDFファイルの作成を行います(参照元:日本の山一覧 (3000m峰) )。

 YDF(YOLP Data Format)はYOLPの標準データフォーマットで、今回はポイント情報のみのYDFファイルを作成します。YDFの詳細については、YJDNのYDFページを参照してください。

 今回使用するYDFファイル「3kmountains.xml」は以下のようになります(こちらからダウンロードできます)。

3kmountains.xml
<?xml version="1.0" encoding="UTF-8"?>
<YDF firstResultPosition="1" totalResultsAvailable="21" totalResultsReturned="21" xmlns="http://olp.yahoo.co.jp/ydf/1.0">

<Feature>
<Name>富士山</Name>
<Geometry>
<Type>point</Type>
<Coordinates format="lat,lon">35.360776,138.727112</Coordinates>
</Geometry>
<Style>
</Feature>

<Feature>
<Name>北岳</Name>
<Geometry>
<Type>point</Type>
<Coordinates format="lat,lon">35.674277,138.238778</Coordinates>
</Geometry>
</Feature>

</YDF>
:

航空写真を表示

 YMKMapViewインスタンスを作成し、mapTypeに「YMKMapTypeSatellite」を設定、YMKMapViewを親ビューに追加することで航空写真を表示できます。

YMKMapView.m
//YMKMapViewのインスタンスを作成
map = [[YMKMapView alloc] initWithFrame:CGRectMake(0, 0, 320, 480) appid:@"<あなたのアプリケーションID>" ];

//地図のタイプ 航空写真を指定
map.mapType = YMKMapTypeSatellite;

//YMKMapViewを追加
[window addSubview:map];
指定した航空写真が表示される
指定した航空写真が表示される

 (C)Geoscience, NTT DATA, RESTEC /Included(C)JA

 情報提供元: 財団法人 リモート・センシング技術センター

場所一覧ファイルを登録

 先ほど作成したリソースファイル「3kmountains.xml」からポイント情報を読み込み、YMKYDFManagerに読み込んだYDFをセットします。YMKYDFManagerに対しYMKMapViewを設定することで航空写真上にポイント情報を追加できます。

YMKMapView.m
//リソースファイルを読み込む
NSError* error;
NSString* path = [[NSBundle mainBundle] pathForResource:@" 3kmountains" ofType:@"xml"];
NSString* text = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];	
//YMKYDFManagerを作成
YMKYDFManager* ydfManager = [[YMKYDFManager alloc] initWithXmlString:text];
//航空写真にYDF情報を登録
[ydfManager showWithMapView:map];

次のページ
スライドショーアプリの完成

この記事は参考になりましたか?

Yahoo! Open Local Platform Hacks連載記事一覧

もっと読む

この記事の著者

大江 啓之(ヤフー株式会社)(オオエ ヒロユキ(ヤフーカブシキガイシャ))

2008年ヤフー入社後、ソフトバンクモバイル版地図アプリ、ドコモ版地図アプリ、BREW版路線・地図アプリなどの携帯アプリの開発を手掛け、「Yahoo! Open Local Platform(略称:YOLP)」のスマートフォン向け地図SDK(iOS Map SDK&Android Map SDK)の...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5967 2011/06/08 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー