ArcGIS Runtime SDK for iOS スタートアップ ガイド

Similar documents
ArcGIS Runtime SDK for iOS スタートアップ ガイド

ArcGIS Runtime SDK for WPF インストールガイド (v10.2.5)

ArcGIS for Server での Web マップの作成方法

ArcGIS API for JavaScript スタートアップ ガイド

ArcGIS Runtime SDK for .NET アプリケーション配布ガイド

ArcGIS Pro 1.1 SDK for .NET インストール ガイド

ArcGIS for Developers 開発者アカウント作成ガイド

Web AppBuilder for ArcGIS (Developer Edition) インストールガイド

ArcGIS Runtime SDK for Windows Phone スタートアップ ガイド (v10.1.x)

ArcGIS Runtime SDK for .NET インストール ガイド (v10.2.6)

リアルタイム気象ビューアー利用ガイド

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

FA/LAインストールガイド(トライアル版)

SURVEY123 FOR ARCGIS スタートアップガイド 2017 年度空間情報科学野外実験

クイックセットアップ for モバイル(iOS/Android)

IOWebDOC

ArcGIS for Server 機能比較表

クイックセットアップ for モバイル(iOS/Android)

Vectorworksサイトプロテクションネットワーク版-情報2

WES7/WE8SシンクライアントVMwareHorizonClientアップデート手順書

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

PDF Convertor for mac スタートアップガイド

クラウドファイルサーバーデスクトップ版 インストールマニュアル ファイルサーバー管理機能 第 1.1 版 2017/01/24 富士通株式会社

Microsoft Word - winscp-LINUX-SCPを使用したファイル転送方法について

改版履歴 版数 改版日付 改版内容 /03/14 新規作成 2013/03まで製品サイトで公開していた WebSAM DeploymentManager Ver6.1 SQL Server 2012 製品版のデータベース構築手順書 ( 第 1 版 ) を本 書に統合しました 2

クラウドファイルサーバーデスクトップ版 インストールマニュアル 利用者機能 第 1.2 版 2019/04/01 富士通株式会社

VisualStage Type-Basic Mobile 設定&操作マニュアル(iOS 版)

スライド 1

内容 1 はじめに インストールの手順 起動の手順 Enterprise Architect のプロジェクトファイルを開く 内容を参照する プロジェクトブラウザを利用する ダイアグラムを開く 便利な機能.

1. 事前準備 ひかりワンチーム SP は インターネットにアクセスして利用するサービスです ご利用いただくには インターネット接続環境及びインターネットに接続可能な端末 (PC 等 ) WEB ブラウザが必要となります 以下のサービス推奨動作環境に合わせ 事前にご用意ください ひかりワンチーム S

KDDI Smart Mobile Safety Manager Mac OS キッティングマニュアル 最終更新日 2019 年 4 月 25 日 Document ver1.1 (Web サイト ver.9.6.0)

AN1609 GNUコンパイラ導入ガイド

中央大学 SSL-VPN サービス接続マニュアル (Mac 版 ) 目次 1. VPNソフトのインストール 1 2. 初回の接続 回目以降の接続 接続終了の手順 14 OS のバージョンによる設定差異等で不明点がある場合は 多摩 IT センターまでお問い合わせください

PDFConverter

Oracle BI Publisherを利用したレポートの作成

電子版操作マニュアル スマートデバイス版

1. Android のホーム画面 06. クイックマニュアル [ 遠隔接続編 -Android 版 -] 2. ストアの起動画面 Android を起動しますと Play ストア ( 赤枠 ) というア イコンがありますのでこちらをタップしてください 機種により表示方法は異なります ストアの初期画

WES7シンクライアントIE11アップデート手順書

2. FileZilla のインストール 2.1. ダウンロード 次の URL に接続し 最新版の FileZilla をダウンロードします URL: なお バージョンが異なるとファイル名が

Active Directory フェデレーションサービスとの認証連携

捺印ツールを使う 捺印ツールをインストールする 1. [ パソコン決裁 6 試用版捺印ツール ] の [ ダウンロード ] ボタンをクリックします 2. [ 実行 ] ボタンをクリックし [SetupDstmp32.exe] ファイルを実行します ご利用のブラウザまたはバージョンにより画面が異なりま

Windows ログオンサービス インストールマニュアル 2018/12/21 1

メール設定 Outlook Express 6 の場合 (Windows 98 ~ XP) Outlook Express 6 の場合 (Windows 98 ~ XP) Windows XP に付属する Outlook Express 6 に αweb のメールアカウントを追加する方法についてご案

KADIAS Mac OS X 用事前環境準備手順書

<4D F736F F D C815B835E838B837D836A B5F92A18A4F94C55F2E646F63>

セキュアブラウザについて セキュアブラウザは デスクネッツを自宅や外出先などから安全に利用するためのツール ( アプリ ) です セキュアブラウザというアプリを使用してデスクネッツを利用します 通常のブラウザアクセスと同じようにデスクネッツをご利用頂けます 端末の紛失 盗難による情報漏えいを防ぐため

IBM i のスマート・デバイス活用【HATSのiPhone / iPadサポート編】

VBAのライセンス登録ガイド

目次 メールの基本設定内容 2 メールの設定方法 Windows Vista / Windows 7 (Windows Live Mail) Windows 8 / Windows 10 (Mozilla Thunderbird) 3 5 Windows (Outlook 2016) メ

MotionBoard Ver. 5.6 パッチ適用手順書

Corporate Document

Microsoft Word - XOOPS インストールマニュアルv12.doc

Proselfの利用方法

939061j

汎用プロキシ利用案内 汎用プロキシ利用案内 目次 汎用プロキシ利用案内 はじめに 汎用プロキシとは 利用可能なポート 概要 動作環境 インストール Windows <I

はじめに URBANO PROGRESSO を microusb ケーブル 01 ( 別売 ) またはこれと共通の仕様の microusb ケーブル ( 別売 )( 以下 USB ケーブル ) と接続して USB テザリング機能をご使用いただくためには あらかじめパソコンに USB ドライバ をイン

DigiCert EV コード署名証明書 Microsoft Authenticode署名手順書

intra-mart Accel Platform — OData for SAP HANA セットアップガイド   初版  

証明書インポート用Webページ

Hik-Connect アカウントにデバイスを追加する方法ユーザーは Hik-Connect APP ウェブポータル ivms4500 アプリまたは ivms クライアント経由で Hik-Connect 機能を有効にすることができます 注 : iv

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

証明書インポート用Webページ

MF mypresto インストールガイド 目次 新規インストールの手順 (Windows 版 )... 2 MF mypresto の起動 (Windows 版 )... 7 新規インストールの手順 (Mac 版 )... 8 MF mypresto の起動 (Mac 版 ) 新規イン

Maser - User Operation Manual

SimLab Plugins for SketchUp 評価版インストールおよびアクティベート方法 注意事項 評価版をお使い頂くには 評価用ライセンスでのアクティベートが必要です 評価用ライセンスファイルの取得を行い 手動でアクティベートする必要があります 各 SimLab プラグインは 評価用とし

KS_GoogleApps_guide

<< 目次 >> 1 PDF コンバータのインストール ライセンスコードの入力 PDF にフォントを埋め込みたい場合の設定 PDF オートコンバータ EX で使用しない場合 PDF コンバータ単体で使用する場合の説明 PDF コンバータのアン

RW-5100 導入説明書 Windows7 用 2017 年 7 月 シャープ株式会社

ESOTERIC ASIO USB DRIVER インストールマニュアル Windows 用 システム推奨条件 2 インストールで使用する言語を選択して 次へ ボタンをクリックする Intel Core 2 Duo 以上のプロセッサー搭載コンピュータ 搭載メモリ 1GB 以上 対応 OS Windo

Microsoft Word - BJ-Trans_JW_SXFInstallguide.doc

Microsoft Word - CBSNet-It連携ガイドver8.2.doc

VECLOS Audio Driver インストールマニュアル Windows 用 2 次へ ボタンをクリックする 対応 OS Windows 7 (32bit 版 64bit 版 ) Windows 8( 32bit 版 64bit 版 ) Windows 8.1( 32bit 版 64bit 版

eYACHO 管理者ガイド

ServerView Resource Orchestrator V3.0 ネットワーク構成情報ファイルツール(Excel形式)の利用方法

Pirates Buster Series Secure Viewer セットアップマニュアル (Web インストーラ)

ArcPad の代替となる現地調査ソリューションについて

SimLabプラグインは各機能を15回分評価版として試用できます

クラウドバックアップサービスアンインストールガイド 第 1.3 版 平成 29 年 1 月 24 日 株式会社大塚商会

更新用証明書インポートツール 操作マニュアル 2011 年 10 月 31 日 セコムトラストシステムズ株式会社 Copyright 2011 SECOM Trust Systems CO.,LTD. All rights reserved. P-1

KDDI Smart Mobile Safety Manager ios キッティングマニュアル 最終更新日 2018 年 12 月 13 日 Document ver1.0 (Web サイト ver.9.5.0)

リモートアクセスライト インストールガイド リモートアクセスライト インストールガイド 第 1. 1 版 2017 年 12 月 12 日

目次 第 1 章はじめに 取扱いについて 記載内容について... 6 第 2 章基本操作 Excel Online を開く ファイル ( ブック ) を作成する ファイル ( ブック ) を開く..

VPN 接続の設定

機能仕様書フォーマット

メール設定

1. はじめに 1.1. Office365 ProPlus ライセンスについて 九州産業大学に在籍中の学生 教職員の方は Office365 ProPlus のライセンスを 1 つ保持しています 1 つの Office365 ライセンスで Office365 ProPlus( 最新版の Offic

はじめに 京セラ製スマートフォンを指定の microusb ケーブル ( 別売 ) またはこれと共通仕様の microusb ケーブル ( 別売 )( 以下 USB ケーブル ) と接続して USB テザリング機能をご使用いただくためには あらかじめパソコンに USB ドライバ をインストールしてい

パソコン決裁7 Business 試用版

AW-PCS認証設定手順1805

Transcription:

10.2 ArcGIS Runtime SDK for ios スタートアップガイド

目次 はじめに... 1 このスタートアップガイドについて... 1 ArcGIS Runtime SDK for ios とは... 1 ArcGIS Runtime SDK for ios の開発環境... 2 モバイルマッピングアプリケーションの開発... 3 ライブラリのインストール... 3 Xcode プロジェクトの構成... 8 Xcode プロジェクトの作成... 9 対象 OS の設定... 11 ArcGIS フレームワークの追加... 12 関連するライブラリの追加... 13 フラグの修正... 15 アーキテクチャの設定... 16 リソースバンドルの追加... 18 アプリケーションの開発... 19 地図の表示... 19 主題図の追加... 25 GPS 位置の表示... 27 マップのナビゲート... 29 アプリケーションの公開について... 30 次のステップ... 31 ArcGIS Resources... 31... 32 トピックス... 35 AGSMapView オブジェクトへのレイヤの追加... 35 レイヤの種類... 36 マップサービスレイヤ... 38 マップサービスレイヤの REST エンドポイント... 39 フィーチャレイヤ... 41 フィーチャレイヤの REST エンドポイント... 42

その他のレイヤ... 46

はじめに このスタートアップガイドについて このスタートアップガイドは初めて ArcGIS Runtime SDK for ios を使用してモバイルマッピングアプリケーションを構築する開発者の方に最も基本的な開発手順を紹介するものです 本書をお読み頂くことで ArcGIS Runtime SDK for ios ライブラリの入手方法およびライブラリを使用したモバイルマッピングアプリケーション開発の基礎を理解することができます ArcGIS Runtime SDK for ios とは ArcGIS Runtime SDK for ios とは ios 特有の操作性や機能と ArcGIS for Server のオン ライン GIS リソースを統合したアプリケーションを開発するために提供される API ライ ブラリです ArcGIS Runtime SDK for ios の詳細は下記をご参照ください ArcGIS Runtime SDK for ios: http://www.esrij.com/products/arcgis/developer/arcgis-runtime-sdks/arcgis-runtimesdk-for-ios/ pg. 1

ArcGIS Runtime SDK for ios の開発環境 本ガイドでは以下の環境にて ArcGIS Runtime SDK for ios を用いたモバイルマッピングアプリケーションの開発手順を紹介します 本ガイドの手順を実行する前に以下の環境がご使用のマシンに適切にセットアップされている必要があります 開発環境 OS:Mountain Lion(Mac OS X 10.8.4 以降 ) Mavericks(Mac OS X 10.9 以 降 ) 開発キット :ios SDK 7 以降 クライアント環境 :ios 6 以降 ArcGIS Runtime SDK for ios がサポートする最新の動作環境につきましては下記をご参照 ください ArcGIS Runtime SDK for ios 動作環境 : http://www.esrij.com/products/arcgis/developer/arcgis-runtime-sdks/arcgis-runti me-sdk-for-ios/environments/ pg. 2

モバイルマッピングアプリケーションの開発 ライブラリのインストール ArcGIS Runtime SDK for ios を用いてモバイルマッピングアプリケーションを開発する には まずライブラリを入手する必要があります 以下の手順に従い ArcGIS for Developers からライブラリをインストールしてください 以下の手順はバージョン 10.2 のものです バージョン 10.2 より前の SDK を使用する 場合は以下のページよりダウンロードしてください (Esri グローバルアカウントでのログ インが必要になります ) http://www.esri.com/apps/products/download/index.cfm?fuseaction=download.al l#arcgis_runtime_sdk_for_ios 1. ArcGIS for Developers にアクセスします ArcGIS for Developers(ArcGIS Runtime SDK for ios バージョン 10.2): https://developers.arcgis.com/ios/?filename=agsruntimesdkiosv10.2.pkg&folde r=software/arcgis_runtimesdk/10.2 2. ArcGIS for Developers の認証ページに遷移します ArcGIS for Developers または ArcGIS Online 組織向けプランのアカウント情報を入力してログインして下さい ArcGIS for Developers 開発者アカウントをお持ちでない方は以下のページにある ArcGIS for Developers 開発者アカウント作成ガイド を参考にアカウントを作成してログインして下さい http://www.esrij.com/products/arcgis/developer/arcgis-runtime-sdks/arc gis-runtime-sdk-for-ios/downloads/ pg. 3

3. ダウンロードした AGSRuntimeSDKiOSv< バージョン >.pkg ファイルをダブ ルクリックして インストールを開始します 4. [ArcGIS_Installer のインストール ] ダイアログボックスが表示されます [ 続 ける ] をクリックします pg. 4

ArcGIS Runtime SDK for ios スタートアップ ガイド 5. 表示された内容を確認して [続ける] をクリックします 6. 使用許諾契約を確認して [続ける] をクリックします pg. 5

7. 使用許諾契約の条項に同意する場合は [ 同意する ] をクリックします 8. インストール先を選択して [ 続ける ] をクリックします pg. 6

ArcGIS Runtime SDK for ios スタートアップ ガイド 9. [インストール] をクリックして インストールを開始します 10. インストールが開始されます pg. 7

ArcGIS Runtime SDK for ios スタートアップ ガイド 11. インストールが終了したら [閉じる] をクリックしてインストール作業を完了し ます Xcode プロジェクトの構成 Xcode は ios アプリケーションを開発するための標準の統合開発環境です Xcode と ios SDK は Mac App Store からダウンロードすることができます ArcGIS Runtime SDK for pg. 8

ios を使用してモバイルマッピングアプリケーション開発するために Xcode に組み込みのプロジェクトテンプレートを使用できます ここでは 開発をスタートするために必要となるプロジェクトの作成と設定方法を説明します ( 以下の手順では Xcode 5.0.2 を使用しています ) Xcode プロジェクトの作成 1. Xcode を起動して 表示されたダイアログで [Create a new Xcode project] を クリックします 2. Single View Application テンプレートを選択して [Next] をクリックします pg. 9

3. Product Name と Class Prefix に sample と入力し Device Family で iphone を選択し [Next] をクリックします 4. 作成場所を指定して [Create] をクリックするとプロジェクトが作成されます pg. 10

ArcGIS Runtime SDK for ios スタートアップ ガイド 対象 OS の設定 1. 対象 OS を ios 6 以上に設定します [General]タブを選択し [Deployment Target]を 6.0 以上に設定します pg. 11

ArcGIS フレームワークの追加 1. ArcGIS フレームワークをプロジェクトに追加するために フレームワーク検索パスに ArcGIS を加えます [Build Settings] タブを選択し 検索バーで "Framework Search Paths" と入力して [Framework Search Paths] セクションを検索します 2. [TARGETS] カラム ( 赤枠 ) をダブルクリックし 表示されたダイアログで [+] を クリックして $(HOME)/Library/SDKs/ArcGIS/iOS/ と入力し パスを追加 します pg. 12

関連するライブラリの追加 ArcGIS ライブラリが依存する フレームワークとライブラリを追加します このライブラ リをもっとも簡単に追加する方法は以下の通りです 1. [Build Settings] タブを選択し [Enable Modules(C and Objective-c)] セクシ ョンで [Yes] を選択します これによりプロジェクトが ArcGIS によって必要 とされるフレームワークとライブラリを参照できるようになります pg. 13

手動で以下のフレームワークを追加することもできます ( プロジェクト作成時に 既 に含まれているライブラリもあります ) CoreGraphics.framework CoreLocation.framework CoreText.framework Foundation.framework QuartzCore.framework MediaPlayer.framework MobileCoreServices.framework OpenGLES.framework pg. 14

Security.framework UIKit.framework フラグの修正 ライブラリで定義された Objective-C カテゴリが正しくロードされることを確認するため に フラグをプロジェクトに追加する必要があります 1. [Build Settings] タブを選択し 検索バーで "Other Linker Flags" と入力し [Other Linker Flags] セクションを検索します 2. [TARGETS] カラムをダブルクリックし 表示されたダイアログで [+] をクリッ クして -ObjC framework ArcGIS l c++ を追加します pg. 15

アーキテクチャの設定 標準のアーキテクチャに armv7 および armv7s を設定します 1. [Build Settings] タブを選択し 検索バーで "architectures" と入力し [Architectures] セクションを検索します pg. 16

2. [TARGETS] カラムをクリックし 表示されたダイアログで armv7 および armv7s を含む Standard architectures を選択します pg. 17

ArcGIS Runtime SDK for ios スタートアップ ガイド リソースバンドルの追加 Esri や Bing ロゴ GPS ロケーションのイメージ ファイルなどのような SDK リソースは ArcGIS.bundle ファイルに統合されています 1. Xcode アプリケーションの [File] メニューで [Add Files to <プロジェクト名 >...] をクリックします 2. ${HOME}/Library/SDKs/ArcGIS/iOS/ArcGIS.framework/Versions/Curre nt/resources インストール先がデフォルトの場合 にある ArcGIS.bundle ファイルを選択し [Add] をクリックします pg. 18

${HOME}/Library フォルダはデフォルトで非表示になっています ターミナルで以下 のコマンドを入力して フォルダを表示することができます chflags nohidden ~/Library/ アプリケーションの開発 ここからは モバイルマッピングアプリケーションの開発方法の一例をご紹介します 地図の表示 1. Project Navigator で MainStoryboard.storyboard ファイルを選択します 次に 地図を表示するための View オブジェクトを追加します Object Library で View オブジェクトを 既に用意されている View 上にドラッグ & ドロップで追加します Utilities エリアが表示されていない場合は 上部パネルの View ボタンで Utilities エリアを表示します pg. 19

2. 追加した View オブジェクトを選択して Identity Inspector を開き [Custome Class] セクションの Class で AGSMapView と入力して return キーを押します 選択している View オブジェクトの名前が Map View に変わったことを確認します pg. 20

ArcGIS Runtime SDK for ios スタートアップ ガイド 3. ツールバーで Assistant Editor を選択し MainStoryboard.storyboard ファイ ルと sampleviewcontroller.h ファイルを表示します 次に 最初に追加した View Map View オブジェクトを control キーを押しながら sampleviewcontroller.h のインターフェース宣言部分の下にドラッグ&ドロッ プします pg. 21

ArcGIS Runtime SDK for ios スタートアップ ガイド 4. 表示されたダイアログで Name を mapview と入力し [Connect] ボタン をクリックします 5. sampleviewcontroller.h に IBOutlet 宣言が追加されます pg. 22

6. sampleviewcontroller.h ファイルで下記のようにコードを記述して ArcGIS.h ヘッダファイルを追加します ( 赤字がコードの追加部分です ) #import <UIKit/UIKit.h> #import <ArcGIS/ArcGIS.h> @interface sampleviewcontroller : UIViewController @property (strong, nonatomic) IBOutlet AGSMapView *mapview; @end 7. Project Navigator で sampleviewcontroller.m ファイルを選択し 下記のよ うにコードを記述して viewdidload メソッド内で ArcGIS レイヤの追加を行 います AGSTiledMapServiceLayer *tiledlayer = [AGSTiledMapServiceLayer tiledmapservicelayerwithurl:[nsurl URLWithString:@"http://server.arcgisonline.com/ArcGIS/rest/servi ces/world_street_map/mapserver"]]; [self.mapview addmaplayer:tiledlayer withname:@"tiled Layer"]; pg. 23

上記のコードでは mapview オブジェクトに背景地図のレイヤとして ArcGISTiledMapServiceLayer クラスを追加しています また ArcGISTiledMapServiceLayer クラスの URL プロパティにデータソースとして Esri 社がホストしている ArcGIS Online の世界の道路地図のサービスを指定しています 8. ツールバーで [Run] をクリックし iphone シミュレータでプロジェクトをデ バッグします 9. デバッグ実行が開始され iphone シミュレータ上でモバイルマッピングアプ リケーションが起動します pg. 24

10. モバイルマッピングアプリケーションが正常に実行されていることが確認でき たら デバッグを停止します 主題図の追加 以下ではモバイルマッピングアプリケーション上の地図に主題図を表示する手順を紹介 します 1. 下記のように viewdidload メソッド内に主題図を追加するコードを追加します AGSDynamicMapServiceLayer *dynamiclayer = [AGSDynamicMapServiceLayer dynamicmapservicelayerwithurl:[nsurl URLWithString:@"http://sampleserver1.arcgisonline.com/ArcGIS/res t/services/demographics/esri_census_usa/mapserver"]]; dynamiclayer.visiblelayers = [NSArray arraywithobjects:[nsnumber numberwithint:5], nil]; [self.mapview addmaplayer:dynamiclayer withname:@"dynamic Layer"]; pg. 25

上記のコードでは 地図の表示 のステップで追加した ArcGISTiledMapServiceLayer の上に ArcGISDynamicMapServiceLayer クラスを追加しています また ArcGISDynamicMapServiceLayer クラスの URL プロパティにデータソースとして Esri 社がホストしている ArcGIS Online のデータを追加しています このデータには複数のレイヤが含まれているため ArcGISDynamicMapServiceLayer クラスの visiblelayers プロパティで 特定のレイヤ ( 米国の州のポリゴン ) のみを表示しています 2. 地図の初期表示範囲を変更します 下記のように初期表示範囲を設定するコード を追加します AGSEnvelope *envelope = [AGSEnvelope envelopewithxmin:-15000000 ymin:200000 xmax:-7000000 ymax:8000000 spatialreference:self.mapview.spatialreference]; [self.mapview zoomtoenvelope:envelope animated:no]; 3. デバッグを行い 背景地図の上に米国の州を黒い線で象ったポリゴン主題図が表 示されることを確認します pg. 26

この手順では ArcGISDynamicMapServiceLayer クラスを追加し 背景レイヤと重ね合わ せて表示しました 追加できる各種レイヤの詳細については レイヤの種類を参照してくだ さい GPS 位置の表示 以下では 地図が読み込まれた後に ios デバイスの GPS 位置を地図上に表示します 1. 地図が読み込まれたイベントをハンドリングするために デリゲートを実装する ことを宣言します sampleviewcontroller.h ファイルに下記のようにコードを 追加します ( 赤字がコードの追加部分です ) @interface sampleviewcontroller : UIViewController <AGSMapViewLayerDelegate> pg. 27

AGSMapViewLayerDelegate プロトコルでは 地図に追加されているレイヤ に関連するイベント処理メソッドが定義されています 2. sampleviewcontroller.m を開き viewdidload メソッド内の初期表示範囲を設定したコードの前に 下記のようにコードを追加して AGSMapView オブジェクトのデリゲートを設定します ( 赤字がコードの追加部分です ) [super viewdidload]; self.mapview.layerdelegate = self; 3. sampleviewcontroller.m ファイルに GPS 位置を地図上に表示するコードを 追加します -(void) mapviewdidload:(agsmapview*)mapview { self.mapview.locationdisplay.autopanmode = AGSLocationDisplayAutoPanModeNavigation; } [self.mapview.locationdisplay startdatasource]; 上記のコードでは 地図が読み込まれたときに GPS 位置を地図上に表示します AGSLocationDisplay クラスの AutoPanMode ではいくつかのモードが利用でき 徒歩や車での移動の際に GPS による最適なナビゲートを提供します pg. 28

4. デバッグを行うと 現在地に青丸が表示されます ( シミュレータでは 固定の位 置が返されます ) 位置情報の利用を許可するかのメッセージが表示された場合は [OK] をタップします 以上でサンプルアプリケーションの開発は終了です より高度なアプリケーションの開発に 関する参考ドキュメントやサンプルの詳細については次のステップをご参照ください マップのナビゲート 以下ではモバイルマッピングアプリケーションに使用する地図のナビゲーションについて 紹介します ArcGIS Runtime SDK for ios の AGSMapView オブジェクトは ios デバイス上で以下の ジェスチャによる地図操作をサポートしています ジェスチャ 地図操作 pg. 29

ピンチイン 画面の 2 箇所を別々の指で触り その間隔を 狭めることで地図を縮小する ピンチアウト 画面の 2 箇所を別々の指で触り その間隔を 広げることで地図を拡大する ダブルタップ 画面の 1 箇所をすばやく 2 回触ることで 地図を一定の倍率で拡大する 2 本指でのダブルタップ画面を 2 本の指ですばやく 2 回触ること で 地図を一定の倍率で縮小する スワイプ 画面を触り 触ったまま指を動かすことで 地 図を移動する 2 本指でのツイスト 画面を 2 本指で触り 触ったまま指を動かす ことで 地図を回転する AGSMapView の allowrotationbypinching プロパティを有効したときに利用可能 アプリケーションの公開について ArcGIS Runtime SDK for ios を使用して開発したモバイルマッピングアプリケーション を公開する場合は Esri 社に申請する必要があります アプリケーションの公開に関する詳細については アプリケーション公開ガイド をご参照 ください pg. 30

ArcGIS Runtime SDK for ios スタートアップ ガイド 次のステップ 本スタートアップ ガイドでは ArcGIS Runtime SDK for ios を用いたモバイル マッピン グ アプリケーションを開発するための最も基本的な開発手順について紹介しました 今後 より高度なアプリケーションを開発するためにはまず ArcGIS for Developers をご参照く ださい ArcGIS Resources には SDK を利用した開発に必要となる参考ドキュメントやサ ンプルが集約されています ArcGIS Resources https://developers.arcgis.com/en/ios/ ArcGIS Runtime SDK for ios のトップページです pg. 31

Guide https://developers.arcgis.com/en/ios/guide/introduction.htm レイヤの追加や検索 編集 解析機能などの実装方法や開発ツールの使用方法など 各種開 発手法をまとめたドキュメントです pg. 32

API Reference https://developers.arcgis.com/en/ios/api-reference/index.htm API のリファレンスです API に含まれるクラスの各種プロパティ メソッド等を確認する ことができます pg. 33

ArcGIS Runtime SDK for ios スタートアップ ガイド Sample Code https://developers.arcgis.com/en/ios/sample-code/ Esri 社の開発者や全世界の開発者の方が作成したモバイル マッピング アプリケーション を紹介するページです アプリケーションによっては サンプル コードをダウンロードする ことができます pg. 34

トピックス AGSMapView オブジェクトへのレイヤの追加 ArcGIS Runtime SDK for ios を用いて作成されたモバイルマッピングアプリケーションには 地図を表示させるための AGSMapView オブジェクトが 1 つ以上追加されています AGSMapView オブジェクトにはアプリケーション上で表示する地図の範囲 縮尺 座標系などの情報が保持されており 1 つ以上のレイヤ ( 顧客分布図などの主題図や道路地図などの背景地図 ) を追加することができます 最初に追加されたレイヤ ( 下記のコードの例では Layer0 ) が最下層に表示されます Layer0 = [AGSTiledMapServiceLayer tiledmapservicelayerwithurl: url0]; [self.mapview addmaplayer:layer0 withname:@"layer0"]; Layer1 = [AGSDynamicMapServiceLayer dynamicmapservicelayerwithurl:url1]; [self.mapview addmaplayer:layer1 withname:@"layer1"]; Layer2 = [AGSDynamicMapServiceLayer dynamicmapservicelayerwithurl:url2]; [self.mapview addmaplayer:layer2 withname:@"layer2"]; Layer2( 例 : 顧客分布図 ) Layer1( 例 : 人口分布図 ) mapview Layer0( 例 : 道路地図 ) pg. 35

レイヤの種類 AGSMapView オブジェクトに追加できるレイヤはそのデータソースの違いから マップ サービスレイヤとフィーチャレイヤの 2 種類に分けることができます レイヤのデータソースの多くは GIS サーバが提供するマップサービスです マップサービス自身もほとんどの場合 複数のレイヤから構成されており あらかじめサーバ管理者によって各マップサービス内のレイヤがどのようなシンボルや色を使用して地図上に表示されるかが定義されています マップサービスはこの定義に従い サーバ上で地図画像を生成しクライアントに配信します 地図画像の生成 地図画像の配信 マップサービス マップサービス内のレイヤではこのサーバ側で生成された地図画像をデータソースとして AGSMapView オブジェクトに表示します GIS サーバ mapview マップサービスレイヤ GIS サーバ マップサービスレイヤでは あらかじめサーバ側で生成された地図画像をデータソースとして使用するため サーバ側で定義されたシンボルや色と異なる方法で地図を表現することができません 一方で フィーチャレイヤではクライアントアプリケーション上で動的にシンボルや色を設定することができます フィーチャレイヤはマップサービスを構成する複数のレイヤの 1 つに直接アクセスし そのレイヤ内の地物の座標および属性情報を取得し pg. 36

て アプリケーション上で動的に描画を行います 特定のレイヤから mapview 座標 属性情報を取得 マップサービス フィーチャレイヤ クライアント側で 動的に描画 GIS サーバ ios のモバイルマッピングアプリケーションでは多くの場合において シンボル情報等の 変更が必要ない背景地図にマップサービスレイヤを使用し ユーザの操作に応じて表示を 対話的に変更する必要がある主題図にフィーチャレイヤを使用します pg. 37

マップサービスレイヤ マップサービスレイヤが利用する GIS サーバのマップサービスは REST 形式で公開されており マップサービスレイヤはこの REST サービスのエンドポイントにアクセスすることで GIS サーバが生成したマップサービスの画像を表示することができます マップサービスレイヤには ArcGIS for Server が公開する様々なマップサービスや Bing Maps サービスなど様々なサービスに対応するために 以下のようなマップサービスレイヤクラスが用意されています マップサービスレイヤクラス : AGSTiledMapServiceLayer ArcGIS for Server のキャッシュマップサービスをデータ ソースとして使用します AGSDynamicMapServiceLayer ArcGIS for Server のダイナミックマップサービスをデー タソースとして使用します AGSImageServiceLayer ArcGIS for Server のイメージサービスをデータソースと して使用します AGSBingMapLayer Bing Maps のマップイメージサービスをデータソースと して使用します ArcGIS for Server のサービスをデータソースとして使用するマップサービスレイヤクラスのデータソースを指定するには クラスの URL 属性にマップサービスの REST エンドポイントを指定します 本スタートアップガイドで紹介したコードでは Esri 社がホストしている ArcGIS Online の世界の道路地図の REST エンドポイントを AGSTiledMapServiceLayer の URL に指定しています pg. 38

マップサービスレイヤの 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] をクリックします pg. 39

World_Street_Map サービスの詳細が表示されます サービスの REST エンドポイントは ブラウザに表示される URL です ローカルの ArcGIS for Server 10.2 の ArcGIS Services Directory は Windows メニ ューより [ すべてのプログラム ] > [ArcGIS] > [ArcGIS 10.2 for Server] > [Services Directory] と選択することでアクセスできます pg. 40

フィーチャレイヤ 前述した通り フィーチャレイヤはマップサービスレイヤと異なり マップサービス内の 1 つのレイヤから座標と属性情報を取得し クライアント側で動的に描画を行います 以下は世界の道路地図のマップサービスレイヤ上にポイントフィーチャレイヤを描画した例です フィーチャレイヤを使用することで 上図のようなグラフィック表現に加えて レイヤ上の 地物の動的な選択 ArcGIS for Server のサービスと連携した Web 編集などを実装するこ とができます pg. 41

フィーチャレイヤの REST エンドポイント フィーチャレイヤもマップサービスレイヤと同様に ArcGIS for Server の REST サービスを利用します しかしマップサービスレイヤと異なり サービス内の個別のレイヤをリソースとして指定します 以下では Esri 社が公開しているサンプルサーバからマップサービスの個別のレイヤの REST エンドポイントを確認します 1. Esri のサンプルサーバに接続し [Specialty] フォルダをクリックします http://sampleserver1.arcgisonline.com/arcgis/rest/services/ pg. 42

2. Specialty フォルダ内の [ESRI_StatesCitiesRivers_USA] マップサービスを クリックします pg. 43

3. ESRI_StatesCitiesRivers_USA のマップサービス詳細が表示されます このマ ップサービスには Cities( 都市 ) Rivers( 河川 ) States( 州 ) の 3 つのレイ ヤが含まれていることがわかります [Cities] レイヤをクリックします 4. Cities レイヤの詳細が表示されます Cities サービスの REST エンドポイントはブラウザに表示される URL です マップサービスレイヤが使用する REST エンドポイントと異なり URL の最後にマップサービス内のレイヤ ID(/0) が指定されている点に注目してください pg. 44

5. 以下の例では上記手順で確認した Cities レイヤを ArcGIS Online の世界の道 路地図の上に重ねています フィーチャレイヤクラス (AGSFeatureLayer) の URL に REST エンドポイントを指定しています その他に AGSFeatureLayer の definitionexpression プロパティを使用して Cities レイヤの POP1990 列 の値が 100000 よりも大きいレコード ( 人口が 10 万人以上 ) のみを表示する と言う条件を設定しています AGSTiledMapServiceLayer *tiledlayer = [AGSTiledMapServiceLayer tiledmapservicelayerwithurl:[nsurl URLWithString:@"http://services.arcgisonline.com/ArcGIS/rest/ser vices/world_street_map/mapserver"]]; [self.mapview addmaplayer:tiledlayer withname:@"tiled Layer"]; AGSFeatureLayer *featurelayer = [AGSFeatureLayer featureservicelayerwithurl:[nsurl URLWithString:@"http://sampleserver1.arcgisonline.com/ArcGIS/res t/services/specialty/esri_statescitiesrivers_usa/mapserver/0"] mode: AGSFeatureLayerModeSnapshot]; featurelayer.definitionexpression = @"POP1990 > 100000"; [self.mapview addmaplayer:featurelayer withname:@"feature Layer"]; 6. AGSFeatureLayer クラスにはその他にもサーバからのデータの取得方式を設定 する mode プロパティなどが用意されています 詳細は Reference をご参照く ださい Reference:AGSFeatureLayer https://developers.arcgis.com/en/ios/api-reference/index.htm pg. 45

その他のレイヤ マップサービスレイヤ フィーチャサービスレイヤの他にも AGSMapView オブジェ クトに追加することができる以下のようなレイヤクラスが利用できます AGSOpenStreetMapLayer オープンストリートマップをレイヤとして表示するためのレイヤクラスです オープンスト リートマップとは 地理情報の自由な共有を目的として 誰でも自由に利用 更新をするこ とができる世界的な地図作成プロジェクトです pg. 46

AGSSketchGraphicsLayer 簡単にジオメトリの作成や編集を対話的に行うことができるレイヤクラスです pg. 47

これらのレイヤクラスについても フィーチャレイヤと同様にマップサービスレイヤな どと重ね合わせて使用することにより より効果的でわかりやすいモバイルマッピングア プリケーションを作成することができます pg. 48

ArcGIS Runtime SDK for ios 2014 年 1 月 17 日 ESRI ジャパン株式会社 http://www.esrij.com/ Copyright(C) Esri Japan. 無断転載を禁ず 本書に記載されている社名 商品名は 各社の商標および登録商標です 本書に記載されている内容は改良のため 予告なく変更される場合があります 本書の内容は参考情報の提供を目的としており 本書に含まれる情報はその使用先の自己の責任において利用して頂く必要があります