CodeZine(コードジン)

特集ページ一覧

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

Yahoo! Open Local Platform Hacks 第3回

  • LINEで送る
  • このエントリーをはてなブックマークに追加

目次

日本国内の山一覧(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];

  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:Yahoo! Open Local Platform Hacks

著者プロフィール

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5