日本国内の山一覧(3,000m以上)ファイルを作成
まずスライドショーで表示する場所を指定するために、日本国内の山(3,000m以上)をリスト化し、それぞれの山に緯度経度を付与してYDFファイルの作成を行います(参照元:日本の山一覧 (3000m峰) )。
YDF(YOLP Data Format)はYOLPの標準データフォーマットで、今回はポイント情報のみのYDFファイルを作成します。YDFの詳細については、YJDNのYDFページを参照してください。
今回使用するYDFファイル「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のインスタンスを作成 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を設定することで航空写真上にポイント情報を追加できます。
//リソースファイルを読み込む 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];
