10.1.x
目次
はじめに ... 1
スタートゕップ ガドについて ... 1
ArcGIS Runtime SDK for Windows Phone とは ... 1
ArcGIS Runtime SDK for Windows Phone の開発環境 ... 1
モバイル マッピング アプリケーションの開発 ... 2 API ラブラリのンストール ... 2 モバル マッピング ゕプリケーションの開発 ... 9 API ライブラリ参照の追加 ... 9 Map コントロールの追加 ... 13 地図の切り替え ... 17 主題図の追加 ... 22 マップのナビゲート ... 24 ゕプリケーションの公開について ... 25 次のステップ ... 25 ArcGIS Resources ... 25 トピックス ... 30 Map コントロールの Layers プロパテゖ ... 30 レヤの種類 ... 31 マップ サービス レイヤ ... 33 マップ サービス レイヤの REST エンドポイント ... 34 フィーチャ レイヤ ... 35 フィーチャ レイヤの REST エンドポイント ... 36 その他のレイヤ ... 39
1
はじめに
スタートアップ ガイドについて
本スタートゕップ ガドは初めて ArcGIS Runtime SDK for Windows Phone を使用してモバル マ ッピング ゕプリケーションを構築する開発者の方に最も基本的な開発手順の流れを紹介するものです。本 書をお読み頂くことで、ArcGIS Runtime SDK for Windows Phone ラブラリの入手方法およびラブ ラリを使用したモバル マッピング ゕプリケーション開発の基礎を理解することができます。
ArcGIS Runtime SDK for Windows Phone とは
ArcGIS Runtime SDK for Windows Phone とは Windows Phone の高い操作性・表現力と ArcGIS for Server などのオンラン GIS リソースを統合したゕプリケーションを開発するために提供される API ラブラリです。
ArcGIS Runtime SDK for Windows Phone の詳細は下記をご参照ください。 ArcGIS Runtime SDK for Windows Phone:
http://www.esrij.com/products/arcgis/mobile/arcgis-for-smartphones/arcgis-for-windows-phone/
ArcGIS Runtime SDK for Windows Phone の開発環境
本ガドでは以下の環境にて ArcGIS Runtime SDK for Windows Phone を用いたモバル マッピング ゕプリケーションの開発手順を紹介します。本ガドの手順を実行する前に以下の環境がご使用のマシン に適切にセットゕップされている必要があります。
開発環境
OS:Windows 7 もしくは Windows Vista SP2 開発ツール:Windows Phone SDK 7.1
ArcGIS Runtime SDK for Windows Phone がサポートする最新の動作環境につきましては下記をご参照 ください。
ArcGIS Runtime SDK for Windows Phone 動作環境:
http://www.esrij.com/products/arcgis/mobile/arcgis-for-smartphones/arcgis-for-windows-phone/envir onments/
2
モバイル マッピング アプリケーションの開発
API ライブラリのインストール
ArcGIS Runtime SDK for Windows Phone を用いてモバル マッピング ゕプリケーションを開発する には、まず Runtime SDK に含まれる API ラブラリを入手する必要があります。以下の手順に従い ArcGIS Resources からンストールしてください。 ※ 以下の手順はバージョン 3.0 を例としています。 1. ArcGIS Resources にゕクセスします。 ArcGIS Resources: http://resources.arcgis.com/ 2. ページ右上の [Sign In] をクリックします。
3 3. Esri グローバ ルゕカウントを使用してログンします(グローバルゕカウントをお持ちでない
場合は、[Create a new Esri Global Account] をクリックしてゕカウントを作成してください)。
4. ページ左側の [Popular Communities] 一覧から [All Communities >] をクリックします。
4 6. ページ右側の [Native SDK (Runtime)] 一覧から [Windows Phone] をクリックします。
7. ArcGIS Runtime SDK for Windows Phone ページに移動します。ページ内のバージョン リ ンク([Version x.x])をクリックします。
5 8. ダウンロード ページに移動します。ページ内の [ArcGISRuntimeSDKxxforWindowsPhone.exe] をクリックします。 9. ラセンス使用許諾条項に同意する場合は [Accept] をクリックします。 10. ページ下部に表示されるダゕログの [実行] をクリックします。 ※ 使用されている Web ブラウザの種類によって、ダゕログの表示形式が異なります。
6 11. [ArcGIS Runtime SDK x.x for Windows Phone Setup] ダゕログ ボックスが表示されます。
[Next] をクリックします。
12. 使用許諾契約書に同意する場合は [I accept the license agreement] を選択し、[Next] をク リックします。
7 13. API ラブラリのンストール デゖレクトリを必要に応じて変更し、[Next] をクリックしま
す。
14. [Install] をクリックします。
8 16. ンストールが完了したら [Finish] をクリックします。
9
モバイル マッピング アプリケーションの開発
以下の手順では Microsoft Visual Studio 2010 または Visual Studio 2010 Express for Windows Phone を用いて ArcGIS Runtime SDK for Windows Phone を使用したモバル マッピング ゕプリケ ーションのサンプルを作成します。
※ 本スタートゕップ ガドではコード ビハンドのプログラミング言語として C# を使用します。 ※ 本スタートゕップ ガドでは Windows Phone エミュレーター上でモバル マッピング ゕプリケ
ーションを実行します。Windows Phone 端末で実行する方法は、Microsoft 社のページをご参照く ださい。
API ライブラリ参照の追加
1. Visual Studio 2010 を起動し、[フゔル] > [新規作成]を選択し、[プロジェクト] をクリッ クします。
10 2. 新しいプロジェクト ダゕログにて、[ンストールされたテンプレート] セクションから
[Visual C#] > [Silverlight for Windows Phone] を選択し、[Windows Phone ゕプリケーシ ョン] を選択します。必要に応じて [名前]、[場所](ソリューションの格納デゖレクトリ)、[ソ リューション名] を変更して [OK] ボタンをクリックします。
3. [新しい Windows Phone ゕプリケーション] ダゕログにて 対象の Windows Phone OS のバージョンから、[Windows Phone OS 7.1] を選択し、[OK] ボタンをクリックします。
11 4. 新しい Windows Phone ゕプリケーションのプロジェクトを含むソリューションが作成され
ます。
5. ArcGIS Runtime SDK for Windows Phone ラブラリの参照設定を追加します。ソリューシ ョン エクスプローラーから [参照設定] を右クリックし [参照の追加...] をクリックします。
12 6. 参照の追加ダゕログにて [.NET] タブを選択し、表示される DLL フゔルの一覧から
ESRI.ArcGIS.Client を選択して [OK] ボタンをクリックします。
※ [.NET] タブに表示されない場合は、[参照] タブより API ラブラリのンストール デゖ レクトリ(例:C:\Program Files (x86)\ESRI SDKs\WindowsPhone71\vx.x)に移動し て、ESRI.ArcGIS.Client.dll を選択します。
7. ソリューション エクスプローラーから Windows Phone ゕプリケーション プロジェクトに API ラブラリの参照が追加されたことを確認します。
13
Map コントロールの追加
以下では モバル マッピング ゕプリケーション上に地図を表示させるために Map コントロールを追加 する手順を紹介します。
1. Windows Phone ゕプリケーション プロジェクト の MainPage.xaml の XAML ビューを開 きます。 2. 参照を追加した API ラブラリの名前空間を宣言します。<Phone> タグの属性として以下の 1 行を追加します。 xmlns:esri="clr-namespace:ESRI.ArcGIS.Client;assembly=ESRI.ArcGIS.Client" 上記の手順により API ラブラリのクラスを「esri」という名前空間で参照することが可能に なります。
3. Windows Phone ゕプリケーション プロジェクト の MainPage.xaml の XAML ビューを開 き、「ContentPanel」という名前の <Grid> タグ内に <esri:Map> タグを追加します。
<esri:Map x:Name=”MyMap”></esri:Map>
上記のコードでは esri 名前空間内の Map コントロールを追加し、Name 属性を指定して Map コントロールに「MyMap」という名前を付けています。
14 4. 追加した Map コントロールで表示するレヤを追加するために <esri:Map> タグ内に以下 のコードを追加し、Map コントロールに Layers プロパテゖを指定します。 (備考)この例で記述している Map タグ内の「Map.Layers」の記述は省略することができま す。 <esri:Map.Layers> <esri:ArcGISTiledMapServiceLayer Url="http://server.arcgisonline.com/ArcGIS/rest/ services/World_Street_Map/MapServer"/> </esri:Map.Layers> 上記のコードでは Map コントロールの Layers プロパテゖに背景地図のレヤとして、 ArcGISTiledMapServiceLayer クラスを追加しています。また追加した
ArcGISTiledMapServiceLayer クラスの URL プロパテゖにデータソースとして、Esri 社がホ ストしている ArcGIS Online の道路地図のサービスを指定しています。
※ Map コントロールの Layers プロパテゖについての詳細は「トピックス:Map コントロー ルの Layers プロパテゖ」を参照してください。
15 5. 必要に応じて「TitlePanel」という名前の <StackPanel> タグ内の 「ApplicationTitle」とい
う名前の <TextBlock> にゕプリケーション名を、「PageTitle」という名前の <TextBlock> に ページ タトルを入力します。ここでは、ゕプリケーション名を「モバル マッピング ゕプ リケーション」、ページ タトルを「サンプル」としています。
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28"> <TextBlock x:Name="ApplicationTitle"
Text="モバイル マッピング アプリケーション"
Style="{StaticResource PhoneTextNormalStyle}"/> <TextBlock x:Name="PageTitle" Text="サンプル" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/> </StackPanel>
6. Visual Studio の標準ツールバーの「Windows Phone プロジェクトのターゲット」として [Windows Phone Emulator(JA)] を選択します。
16 7. プロジェクトをデバッグ実行します。Visual Studio のメニューから [デバッグ] を選択し、デ バッグ開始をクリックします。 デバッグ実行が開始され、Windows Phone エミュレーター上でモバル マッピング ゕプリ ケーションが開始されます。 モバル マッピング ゕプリケーションが正常に実行されていることが確認できたら、Visual Studio のデバッグを停止します。 Windows Phone エミュレーター上では、マウスのドラッグによる地図移動およびダブル クリ ックによる地図の定率拡大操作のみがサポートされています(マウス ホールやキーボード操 作による地図の拡大/縮小などの操作が必要な場合は、これらの機能をコーデゖングによって実 装していただく必要があります)。実機では、ピンチ/ストレッチによる拡大/縮小操作など、ジ ェスチャによる各種ナビゲーション操作が Map コントロールに標準機能として実装されてい ます(詳細は「マップのナビゲート」を参照してください)。
17
地図の切り替え
以下では、モバル マッピング ゕプリケーション上に表示する地図を切り替える手順を紹介します。 1. <esri:Map.Layer> タグ内の <esri:ArcGISTiledMapServiceLayer> の ID プロパテゖを使 用して、レヤに「BaseLayer」という ID を設定します。 <esri:Map.Layers> <esri:ArcGISTiledMapServiceLayer ID="BaseLayer" Url="http://server.arcgisonline.com/ArcGIS/rest/^ services/World_Street_Map/MapServer"/> </esri:Map.Layers> 2. PhoneApplicationPage の ApplicationBar プロパテゖを設定し、モバル マッピング ゕプ リケーションのゕプリケーションバーを設定します。MainPage.xaml の最も外側のタグである <phone:PhoneApplicationPage> タグ内に以下のコードを追加します(もしくは MainPage.xaml 内でコメントゕウトされている <phone:PhoneApplicationPage.ApplicationBar> のコメントゕウトを解除し、コードを以下 のように修正します)。 <phone:PhoneApplicationPage.ApplicationBar><shell:ApplicationBar IsVisible="True" IsMenuEnabled="True"> <shell:ApplicationBar.MenuItems> <shell:ApplicationBarMenuItem Text="航空写真" Click="Menu_ItemSelected" /> <shell:ApplicationBarMenuItem Text="道路地図" IsEnabled="True" Click="Menu_ItemSelected"/> <shell:ApplicationBarMenuItem Text="地形図" Click="Menu_ItemSelected"/> </shell:ApplicationBar.MenuItems> </shell:ApplicationBar> </phone:PhoneApplicationPage.ApplicationBar>
18 上記のコードでは、ゕプリケーションのメン画面の下部に表示される [ゕプリケーション バ ー] に表示されるメニュー ゕテムを指定しています。ここでは、「航空写真」「道路地図」「地 形図」という 3 つのメニュー ゕテムを追加しています。また、それぞれのメニュー ゕ テムをクリックした際に発生するベントとして、「Click="Menu_ItemSelected"」という ベントを追加しています。 3. XAML ビューにおいて、上記で追加した「Click="Menu_ItemSelected"」上で右クリックし、 [ベント ハンドラーへ移動] をクリックします。
19 4. MainPage.xaml.cs に、「Menu_ItemSelected」ベントのベントハンドラが追加されます。 Windows Phone ゕプリケーションでは「.xaml」フゔルにゕプリケーションの外観を記述 し、コード ビハンド フゔルと呼ばれるフゔル(C# の場合は「.cs」、VB.NET の場合 は「.vb」 フゔルにゕプリケーションのロジックを記述します。MainPage.xaml.cs は「Map コントロールの追加」のステップでモバル マッピング ゕプリケーションの外観を記述した MainPage.xaml のコード ビハンド フゔルです。 「Menu_ItemSelected」ベントのベントハンドラの処理を記述する際に使用するクラスの 名前空間を記述します。 ArcGISTiledMapServiceLayer クラスを使用するために ESRI.ArcGIS.Client 名前空間の使用を、ApplicationBarMenuItem クラスを使用するために Microsoft.Phone.Shell 名前空間の使用を宣言します。 using Microsoft.Phone.Shell; using ESRI.ArcGIS.Client;
20 5. 前途した手順で追加されたメニュー ゕテムが選択された際に発生するベント
(Menu_ItemSelected)のベントハンドラの処理を MainPage.xaml.cs に記述します。
private void Menu_ItemSelected(object sender, EventArgs e) {
ArcGISTiledMapServiceLayer arcgisTiledLayer =
MyMap.Layers["BaseLayer"] as ArcGISTiledMapServiceLayer; ApplicationBarMenuItem menuItem = sender as ApplicationBarMenuItem; switch (menuItem.Text) { case "航空写真": arcgisTiledLayer.Url = "http://services.arcgisonline.com/ArcGIS/^ rest/services/World_Imagery/MapServer"; break; case "道路地図": arcgisTiledLayer.Url = "http://services.arcgisonline.com/ArcGIS/^ rest/services/World_Street_Map/MapServer"; break; case "地形図": arcgisTiledLayer.Url = "http://services.arcgisonline.com/ArcGIS/^ rest/services/World_Topo_Map/MapServer"; break; } }
21 上記のコードでは、ゕプリケーションバーの選択されたゕテムに応じて Map コントロール内 の Layers プロパテゖに追加したレヤ(ArcGISTieldMapServiceLayer)の URL プロパテ ゖを変更することで、レヤが参照する背景地図サービスを切り替えています。使用している URL はいずれも Esri 社がホストしている ArcGIS Online の地図サービスです。
※ Map コントロールの Layers プロパテゖについての詳細は「トピックス:Map コントロー ルの Layers プロパテゖ」を参照してください。
6. デバッグを行い、ゕプリケーション バーが追加され、任意のメニューを選択することで、地図 が切り替わることを確認します。
22
主題図の追加
以下では モバル マッピング ゕプリケーション上の地図に主題図を表示する手順を紹介します。 1. <esri:Map.Layer> タグ内の <esri:ArcGISTiledMapServiceLayer> の 下に以下のコード を追加します。 <esri:FeatureLayer Url="http://sampleserver1.arcgisonline.com/ ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5” /> 上記のコードでは、「Map コントロールの追加」のステップで追加した、背景地図 (ArcGISTiledMapServiceLayer)の上に、米国の州のポリゴンを表す示す地図を追加してい ます。 2. 地図の初期表示範囲を変更します。<esri:Map> の Extent プロパテゖを以下のように指定し ます。 <esri:Map x:Name="MyMap" Extent="-15000000,2000000,-7000000,8000000">23 3. デバッグを行い、背景地図の上に米国の州を黒い線で象ったポリゴン主題図が表示されること
を確認します。
この手順では、Map コントロールの Layers プロパテゖに FeatureLayer クラスを追加し背 景レヤと重ね合わせて表示しました。Map コントロールに追加することができる各種レヤ の詳細については、「レヤの種類」を参照してください。
以上でサンプル ゕプリケーションの開発は終了です。より高度なゕプリケーションの開発に関 する参考ドキュメントやサンプルの詳細については「次のステップ」をご参照ください。
24
マップのナビゲート
以下ではモバル マッピング ゕプリケーションに使用する地図のナビゲーションについて紹介します。 ArcGIS Runtime SDK for Windows Phone の Map コントロールは、Windows Phone デバス上で以 下のジェスチャによる地図操作をサポートしています。 ジェスチャ 地図操作 パン/ドラッグ 画面を触り、触ったまま指を動かすことで、 地図を移動する。 ピンチ 画面の 2 箇所を別々の指で触り、その間隔を狭めることで 地図を縮小する。 ストレッチ 画面の 2 箇所を別々の指で触り、その間隔を広げることで 地図を拡大する。 ダブル タップ 画面の 1 箇所をすばやく 2 回触ることで、地図を一定の 倍率で拡大する。 フリック 画面を触り、勢いをつけて指を動かすことで、地図を移動す る。
25
アプリケーションの公開について
ArcGIS Runtime SDK for Windows Phone を使用して開発したモバル マッピング ゕプリケーション
を Windows Phone Store に公開する場合は、Esri に申請する必要があります。
ゕプリケーションの公開に関する詳細については弊社 Web サトの「ゕプリケーション公開ガド」を ご参照ください。
次のステップ
本スタートゕップ ガドでは ArcGIS Runtime SDK for Windows Phone を用いたモバル マッピン グ ゕプリケーションを開発するための最も基本的な開発手順について紹介しました。今後、より高度なゕ プリケーションを開発するためにはまず ArcGIS Resources をご参照ください。ArcGIS Resources には API を利用した開発に必要となる参考ドキュメントやサンプルがすべて集約されています。
ArcGIS Resources
26 ArcGIS Application for Windows Phone
Windows Phone 専用の基本的な GIS の機能が実装されたモバル マッピング ゕプリケーションです。 ArcGIS for Server や ArcGIS.com で公開された GIS サービスを参照し、すぐに GIS 業務に利用する ことができます。Windows Phone Store から無償でダウンロードできます。
http://resources.arcgis.com/en/communities/smartphone-apps/01ww00000008000000.htm
ArcGIS Runtime SDK for Windows Phone
本スタートゕップ ガドでご紹介した ArcGIS Runtime SDK for Windows Phone に含まれる API ラ ブラリをダウンロードすることができます。
27 Concepts
ArcGIS Runtime SDK for Windows Phone の概要、マップの追加や ArcGIS for Server サービスの利 用方法といった各種開発手法をまとめた開発者ヘルプです。 http://resources.arcgis.com/en/help/windows-phone-sdk/concepts/index.html#//011v0000000400000 0 Samples API を用いた機能毎のラブ サンプルとその開発コードです。はじめて API による開発を行う場合はま ず、このサンプルと同じモバル マッピング ゕプリケーションを作成してみることをお勧めします。 http://resources.arcgis.com/en/help/windows-phone-sdk/samples/start.htm
28 API Reference API のリフゔレンスです。API に含まれるクラスの各種プロパテゖ、メソッド等を確認することができま す。 http://resources.arcgis.com/en/help/windows-phone-sdk/apiref/api_start.htm Forums 全世界の開発者の方が技術や知識の情報交換を行っています。 http://forums.arcgis.com/forums/109-ArcGIS-for-Windows-Phone-SDK
29 Gallery Esri の開発者や全世界の開発者の方が作成したモバル マッピング ゕプリケーションを紹介するページ です。ゕプリケーションによっては、サンプル コードをダウンロードすることができます。 http://www.arcgis.com/home/search.html?q=windows%20phone&t=content&focus=applications-mobil e&sortField=uploaded&sortOrder=desc App Showcase
実際に ArcGIS Runtime SDK for Windows Phone を使用して作成されたモバル マッピング ゕプリ ケーションの紹介ページです。このページで紹介されているゕプリケーションは Windows Phone Store からダウンロードすることができます。
30
トピックス
Map コントロールの Layers プロパティ
ArcGIS Runtime SDK for Windows Phone を用いて作成されたモバル マッピング ゕプリケーション には、地図を表示させるための Map コントロールが 1 つ以上追加されています。Map コントロールに はゕプリケーション上で表示する地図の範囲、縮尺、座標系などの情報が保持されており、1 つ以上のレ ヤ(顧客分布図などの主題図や道路地図などの背景地図)を追加することができます。
<esri:Map>
<esri:Map.Layers>
<Layer x:Name="0" Url="..." /> <Layer x:Name="1" Url="..." /> <Layer x:Name="2" Url="..." /> </esri:Map.Layers>
</esri:Map>
上記の例のように Map コントロールの Layers プロパテゖには複数のレヤを追加することが可能であ り、Map コントロールに 1 番最初に追加されたレヤ(上記の例ではレヤ 0)がレヤ層の最も下に表 示され、かつそのレヤの座標系が Map コントロールの座標系になります。
31
レイヤの種類
Map コントロールに追加できるレヤはそのデータ ソースの違いから、マップ サービス レヤとフゖ ーチャ レヤの 2 種類に分けることができます。 Map コントロールのレヤのデータ ソースの多くは、GIS サーバが提供するマップ サービスです。マッ プ サービス自身もほとんどの場合、複数のレヤから構成されており、あらかじめサーバ管理者によって 各マップ サービス内のレヤがどのようなシンボルや色を使用して地図上に表示されるかが定義されて います。マップ サービスはこの定義に従い、サーバ上で地図画像を生成しクラゕントに配信します。 マップ サービス内のレヤではこのサーバ側で生成された地図画像をデータ ソースとして Map コント ロールに表示します。32 マップ サービス レヤでは、あらかじめサーバ側で生成された地図画像をデータ ソースとして使用する ため、サーバ側で定義されたシンボルや色と異なる方法で地図を表現することができません。一方で、フ ゖーチャ レヤではクラゕント ゕプリケーション上で動的にシンボルや色を設定することができます。 フゖーチャ レヤはマップ サービスを構成する複数のレヤの 1 つに直接ゕクセスし、そのレヤ内の 地物の座標および属性情報を取得して、ゕプリケーション上で動的に描画を行います。 Windows Phone のモバル マッピング ゕプリケーションでは多くの場合において、シンボル情報等の 変更が必要ない背景地図にマップ サービス レヤを使用し、ユーザの操作に応じて表示を対話的に変更 する必要がある主題図にフゖーチャ レヤを使用します。
33
マップ サービス レイヤ
マップ サービス レヤが利用する GIS サーバのマップ サービスは、REST 形式で公開されており、マ ップ サービス レヤはこの REST サービスのエンドポントにゕクセスすることで、GIS サーバが生成 したマップ サービスの画像を表示することができます。マップ サービス レヤには、ArcGIS for Server が公開する様々なマップ サービス や Bing Maps サービスなど様々なサービスに対応するために、以下 のようなマップ サービス レヤ クラスが用意されています。
マップ サービス レイヤ クラス:
ArcGISTiledMapServiceLayer ArcGIS for Server のマップ キャッシュ サービスをデータ ソース
として使用します。
ArcGISDynamicMapServiceLayer ArcGIS for Server のダイナミック マップ サービスをデータ ソー
スとして使用します。
ArcGISImageServiceLayer ArcGIS for Server のイメージ サービスをデータ ソースとして使
用します。
マップ サービス レヤ クラスのデータ ソースを指定するには、クラスの Url 属性にマップ サービス の REST エンドポントを指定します。本スタートゕップ ガドで紹介したコードでは Esri 社がホスト している ArcGIS Online の世界道路地図の REST エンドポントを
34
マップ サービス レイヤの REST エンドポイント
マップ サービス レヤが利用する ArcGIS for Server のマップ サービスの REST エンドポントは ArcGIS for Server をンストールするとサーバに構成される ArcGIS Services Directory と呼ばれる簡 易 Web ゕプリケーションから確認することができます。以下の URL より Esri 社が公開している ArcGIS for Server のマップ サービスの REST エンドポントを確認することができます。 ArcGIS Online ArcGIS Services Directory
http://server.arcgisonline.com/ArcGIS/Rest/Services
「Services:」セクションに表示されるサービスの一覧から使用したいサービスをクリックします。例えば 世界道路地図 の REST エンドポントを確認するには、Home ページにて、 [World_Street_Map] を クリックします。
World_Street_Map サービスの詳細が表示されます。サービスの REST エンドポントはブラウザに表示 される URL です。
※ ローカルの ArcGIS for Server の ArcGIS Services Directory は Windows メニューより [すべて のプログラム] > [ArcGIS] > [ArcGIS for Server] > [Services Directory] と選択することでゕク セスできます。
35
フィーチャ レイヤ
前述した通り、フゖーチャ レヤ はマップ サービス レヤと異なり、マップサービス内の 1 つのレ ヤから座標と属性情報を取得し、クラゕント側で動的に描画を行います。以下は道路地図のマップ サー ビス レヤ上にポント フゖーチャ レヤを描画した例です。 フゖーチャ レヤを使用することで、上図のようなグラフゖック表現に加えて、レヤ上の地物の動的な 選択、ArcGIS for Server のサービスと連携した、Web 編集、時間遷移によるゕニメーション表現などを 実装することができます。36
フィーチャ レイヤの REST エンドポイント
フゖーチャ レヤ もマップ サービス レヤと同様に ArcGIS for Server の REST サービスを利用し ます。しかしマップ サービス レヤと異なり、サービス内の個別のレヤをリソースとして指定します。 以下では、Esri 社が公開しているサンプル サーバからマップ サービスの個別のレヤの REST エンドポ ントを確認します。 1. Esri のサンプル サーバに接続し、[Specialty] フォルダをクリックします。 http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/ 2. Specialty フォルダ内の [ESRI_StatesCitiesRivers_USA] マップ サービスをクリックしま す。
37 3. ESRI_StatesCitiesRivers_USA のマップ サービス詳細が表示されます。このマップ サービス
には、Cities(都市)、Rivers(河川)、States(州)の 3 つのレヤが含まれていることがわ かります。[Cities] レヤをクリックします。
4. Cities レヤの詳細が表示されます。Cities サービスの REST エンドポントはブラウザに表 示される URL です。マップ サービス レヤ が使用する REST エンドポントと異なり、 URL の最後にマップ サービス内のレヤ ID (/0)が指定されている点に注目してください。
38 5. 以下の例では上記手順で確認した、Cities レヤを ArcGIS Online の世界道路地図の上に重
ねています。フゖーチャ レヤ クラス(FeatureLayer)の Url プロパテゖに REST エンド ポントを指定しています。その他に、FeatureLayer の Where プロパテゖを使用して Cities レヤの POP1990 列の値が 100000 よりも大きいレコード(人口が 10 万人以上)のみを 取得する条件句を設定しています(Where="POP1990 > 100000") <esri:Map x:Name="MyMap"> <esri:ArcGISTiledMapServiceLayer Url="http://services.arcgisonline.com/ArcGIS/rest/^ services/World_Street_Map/MapServer" /> <esri:FeatureLayer Url="http://sampleserver1.arcgisonline.com/ArcGIS/^ rest/services/Specialty/ESRI_StatesCitiesRivers_USA/^ MapServer/0" Where="POP1990 > 100000"/> </esri:Map> 6. FeatureLayer クラスにはその他にもサーバからのデータの取得方式を設定する MODE プロ パテゖや、自動的にポントを集約して表示するクラスタ シンボルを設定するための Clusterer プロパテゖなどが用意されています。詳細は API Reference をご参照ください。 API Reference:FeatureLayer
http://resources.arcgis.com/en/help/windows-phone-sdk/apiref/api_start.htm?ESRI. ArcGIS.Client~ESRI.ArcGIS.Client.FeatureLayer.html
39
その他のレイヤ
ESRI.ArcGIS.Client.Toolkit.DataSources という名前空間を使用することで、Map コントロールに追加 することができる拡張レヤ クラスがあります。以下に主なレヤをご紹介します。 GpsLayer Windows Phone 端末に搭載された GPS 機能と連動して現在の位置情報を表示するレヤ クラスです。 KmlLayerGoogle Map や Google Earth で利用される KML を読み込み地図上に表示するためのレヤ クラスで す。
40 OpenSreetMapLayer オープンストリートマップをレヤとして表示するためのレヤ クラスです。オープンストリートマップ とは、地理情報の自由な共有を目的として、誰でも自由に利用・更新をすることができる世界的な地図作 成プロジェクトです。 WmsLayer / WmtsLayer
Open Geospatial Consortium(OGC)によって策定された地図配信の標準プロトコルである WMS(Web Map Service)および WMTS(Web Map Tile Service)を地図上に表示するためのレヤ クラスです。
41 これらの拡張レヤ クラスについても、フゖーチャ レヤと同様にマップ サービス レヤなどと重ね 合わせて使用することにより、より効果的でわかりやすいモバル マッピング ゕプリケーションを作成 することができます。拡張レヤ クラスについても、Samples にオンラン サンプルが公開されていま す。
ArcGIS Runtime SDK for Windows Phone
スタートアップ ガイド(v10.1.x)
2013 年 3 月 22 日 第 2 版 ESRI ジャパン株式会社 http://www.esrij.com/
Copyright(C) Esri Japan. 無断転載を禁ず
本書に記載されている社名、商品名は、各社の商標および登録商標です。 本書に記載されている内容は改良のため、予告なく変更される場合があります。
本書の内容は参考情報の提供を目的としており、本書に含まれる情報はその使用先の自己の 責任において利用して頂く必要があります。