• 検索結果がありません。

Python によるジオプロセシング スクリプト入門

N/A
N/A
Protected

Academic year: 2021

シェア "Python によるジオプロセシング スクリプト入門"

Copied!
7
0
0

読み込み中.... (全文を見る)

全文

(1)

目次

目次 ... 1 アイコンの説明 ... 8 第 1 章 イントロダクション ... 9 本コースの目的 ... 11 コース内容 1 日目 ... 11 コース内容 2 日目 ... 12 付属資料 ... 12 講習資料 ... 13 イントロダクション ... 13 ArcGIS の紹介 ... 14 Web ページ:サポート情報 ... 14 Web ページ:ArcGIS を学べる ... 15 Web ページ:ArcGIS ヘルプ ... 15 開発者向けプログラム/サービス ... 16 演習 1: 演習環境の構築 ... 17 ステップ 1: Windows へのログオン (オプション) ... 17 ステップ 2: 演習データのインストール (オプション) ... 17 ステップ 3: PyScripter のインストール (オプション)... 18 ステップ 4: PyScripter の環境設定 (オプション) ... 19 ステップ 5: ArcMap のスクリプト エディターの設定 (オプション) ... 23 ステップ 6: Python アドイン ウィザードのインストール (オプション) ... 23 第 2 章 Python とは ... 25 第 2 章 概要 ... 27 Python スクリプトの統合開発環境 (IDE) ... 27 PyScripter インターフェイス ... 28 IDLE インターフェイス ... 28 Python を構成する 5 つの要素 ... 29 変数 ... 29 Python の一般的なデータ型 ... 30 文字列 (1) ... 30 文字列 (2) ... 31 組み込み関数 (1) ... 31 引数と戻り値... 32 組み込み関数 (2) ... 32 モジュール (1) ... 33 モジュール (2) ... 33 文 (ステートメント) ... 34

(2)

文 (2) ... 34 文 (3) ... 35 学習のヒント... 35 Python の学習資料 ... 36 演習 2: Python の基礎を学習 ... 37 ステップ 1: スクリプトとコメント コードの作成 ... 37 ステップ 2: 変数の操作 ... 38 ステップ 3: 組み込み関数の利用 ... 41 ステップ 4: モジュールの操作 ... 42 ステップ 5: 条件分岐の操作 ... 45 ステップ 6: ループの操作 ... 46 質問の解答 ... 49 第 3 章 ArcPy とは ... 51 第 3 章 概要 ... 53 サイト パッケージとは... 53 ArcPy サイト パッケージ ... 54 PyScripter 上で ArcPy を利用 ... 54 [Python] ウィンドウ ... 55 ArcPy の関数 ... 55 クラス ... 56 ArcPy のクラス ... 56 マッピング モジュール... 57 データ アクセス モジュール ... 57 Spatial Analyst モジュール ... 58 Network Analyst モジュール ... 58 演習 3: ArcPy サイト パッケージの利用 ... 59 ステップ 1: ArcMap 上で ArcPy にアクセス ... 59 ステップ 2: PyScripter 上で ArcPy にアクセス ... 62 ステップ 3: [Python] ウィンドウで Python スクリプトを実行 ... 64 ステップ 4: [Python] ウィンドウ上で [クリップ] ツールの実行 ... 66 第 4 章 構文エラーと例外処理 ... 69 第 4 章 概要 ... 71 デバッグの流れ ... 71 PyScripter のデバッグ機能 ... 72 例:構文エラー (3 箇所) ... 72 例:構文エラーと実行時エラー (4 箇所) ... 73 例外 ... 73 一般的な例外... 74 try..except ブロック ... 74

(3)

except Exception as e: ... 75 arcpy.ExecuteError 例外クラス ... 75 traceback モジュール ... 76 演習 4A: 構文エラーの対処 ... 77 ステップ 1: スクリプトをデバッグ... 77 ステップ 2: スクリプトの実行 ... 80 演習 4B: 例外の対処 ... 83 ステップ 1: try..except 文の組み込み ... 83 ステップ 2: Exception as e の利用 ... 85 ステップ 3: arcpy.ExecuteError の利用 ... 87 ステップ 4: traceback モジュールの利用 ... 88 第 5 章 Describe 関数の利用 ... 91 第 5 章 概要 ... 93 Describe 関数 ... 93 フィーチャクラスのプロパティ情報を取得 ... 94 フィーチャクラス プロパティ ... 94 例: フィーチャクラスの情報を取得 ... 95 例: フィーチャ データセットの情報を取得 ... 95 ラスター データのプロパティ情報を取得 ... 96 ラスター プロパティ ... 96 例: ラスター データの情報を取得 ... 97 演習 5: データの情報を取得 ... 99 ステップ 1: フィーチャクラス プロパティの取得 ... 99 ステップ 2: プロパティを使用したジオプロセシング関数の実行 ...101 質問の解答 ...107 第 6 章 List 関数の利用 ... 109 第 6 章 概要 ...111 List 関数 ...111 戻り値の利用...112 例: フィーチャクラスのリスト化 ...112 例: フィールドの名前と種類を表示 ...113 例: ラスターのリスト化とプロパティの取得 ...113 演習 6: List 関数の利用 ...115 ステップ 1: フォルダー内の「C」から始まるファイル ジオデータベースをリスト化 ...115 ステップ 2: フィーチャクラスが持つすべてのフィールドをリスト化 ...116 ステップ 3: フォルダー内のすべてのラスター データセットのプロパティを取得し CSV ファイル に出力 ...118 質問の解答 ...121 第 7 章 フィールド演算の利用 ... 123

(4)

第 7 章 概要 ...125 フィールド演算 ...125 単純なフィールド演算 ...126 高度なフィールド演算 ...126 def 文 ...127 PyScripter からフィールド演算 ...127 ローカル変数とグローバル変数 ...128 global 文の利用例 ...128 演習 7: フィールド演算の利用...129 ステップ 1: ArcMap から単純なフィールド演算を実行 ...129 ステップ 2: ArcMap から高度なフィールド演算を実行 ...132 ステップ 3: PyScripter から高度なフィールド演算を実行 ...134 第 8 章 ArcToolbox 上でスクリプトの実行 ... 139 第 8 章 概要 ...141 動的にパラメーターを指定してスクリプトを実行 ...141 arcpy.GetParameterAsText 関数...142 PyScripter によるデバッグ ...142 カスタム ツールにスクリプトを付属 ...143 [スクリプトの追加] ダイアログの設定 (1) ...143 [スクリプトの追加] ダイアログの設定 (2) ...144 [スクリプトの追加] ダイアログの設定 (3) ...144 パラメーター プロパティ ...145 ワンポイント アドバイス ...145 ArcMap、ArcCatalog でのデバッグ環境 ...146 [Python] ウィンドウ上で実行 ...146 Python ツールボックス (.pyt) ...147 Python ツールボックスのツールを定義 ...147 演習 8A: フィーチャをコピーするためのスクリプト ツールを作成 ...149 ステップ 1: ハードコードされた値を使用してスクリプトを実行 ...149 ステップ 2: ハードコードされた値を動的な値に変換 ...151 ステップ 3: PyScripter から引数を利用してスクリプトを実行 ...151 ステップ 4: ArcToolbox のツールに引数を利用したスクリプトを追加する ...152 ステップ 5: ArcToolbox からスクリプト ツールを実行 ...157 ステップ 6: [Python] ウィンドウからスクリプト ツールを実行 ...158 演習 8B: Python ツールボックスの利用 ...161 ステップ 1: Python ツールボックスの作成 ...161 ステップ 2: ツールの定義 ...161 ステップ 3: BufferMultipleFC ツールの実行 ...164 第 9 章 マッピング モジュールの利用 ... 167

(5)

第 9 章 概要 ...169 マッピング モジュール...169 フィーチャ レイヤーとテーブル ビュー ...170 フィーチャクラス と フィーチャ レイヤー ...170 テーブル と テーブル ビュー ...171 マップ、データ フレームの取得 ...171 レイヤーの取得 ...172 [フィーチャ レイヤーの作成] ツール ...172 例: [フィーチャ レイヤーの作成] ツール ...173 例: [テーブル ビューの作成] ツール ...173 FieldInfo クラス ...174 レイヤーの操作 ...174 取得可能なシンボル タイプ ...175 マップのエクスポート ...175 演習 9A: PDF 地図帳の作成 ...177 ステップ 1: データ ドリブン ページの確認 ...177 ステップ 2: PDFDocument オブジェクトの作成 ...178 ステップ 3: データ ドリブン ページのエクスポート ...180 ステップ 4: PDF 地図帳の作成 ...181 演習 9B: データの抽出とフィールド操作 ...183 ステップ 1: フィーチャの抽出 ...183 ステップ 2: フィーチャ レイヤーの解析を実行 ...184 質問の解答 ...189 第 10 章 データ アクセス モジュールの利用 ... 191 第 10 章 概要 ...193 データ アクセス モジュール ...193 Cursor オブジェクト ...194 arcpy.da.SearchCursor ...194 arcpy.da.UpdateCursor ...195 arcpy.da.InsertCursor ...195 フィーチャ ジオメトリへのアクセス ...196 例: ジオメトリ情報の取得 ...196 編集セッションの開始、終了 ...197 例: Editor クラス ...197 演習 10: SearchCursor と UpdateCursor の利用 ...199 ステップ 1: フィールド値にアクセス ...199 ステップ 2: フィールドの追加と更新 ...201 ステップ 3: フィールドのチェック...203 質問の解答 ...205

(6)

付属資料 1 ジオメトリ オブジェクトの利用 ... 207 付属資料 1 概要 ...209 ジオメトリ オブジェクトの作成 ...209 PointGeometry オブジェクトの作成 ...210 Polyline オブジェクトの作成 ...210 Polygon オブジェクトの作成 ...211 フィーチャ ジオメトリの作成と更新 ...211 ジオメトリ オブジェクトの利用 ...212 例: ジオメトリ オブジェクトの利用 ...212 付属演習 1: Geometry オブジェクトの利用 ...213 ステップ 1: Geometry オブジェクトの作成 ...213 ステップ 2: フィーチャクラスにジオメトリ オブジェクトを利用する ...217 ステップ 3: ジオメトリの修正 ...219 ステップ 4: ジオメトリ オブジェクトをジオプロセシング ツールに利用する ...221 付属資料 2 Python アドイン ... 225 付属資料 2 概要 ...227 GUI のカスタマイズ・Python アドイン ...227 [ユーザー設定] ダイアログ (1) ...228 [ユーザー設定] ダイアログ (2) ...228 ArcGIS のコマンド ...229 Python アドインで作成できる機能 ...229 Python アドイン ウィザードの入手 ...230 アドインの作成手順 (1) ...230 アドインの作成手順 (2) ...231 アドインの作成手順 (3) ...231 アドインの作成手順 (4) ...232 アドインの作成手順 (5) ...232 付属演習 2: Python アドインの作成 ...233 ステップ 1: プロジェクトの作成 ...233 ステップ 2: コードの記述 ...235 ステップ 3: 動作のテスト ...237 ステップ 4: アドインのアンインストール (オプション) ...238

付属資料 3 ArcGIS Pro の ArcPy ... 239

付属資料 3 概要 ...241 ArcGIS Pro とは ...241 ArcMap ArcPy との主な違い ...242 Python 2.x → 3.x の変更点 ...242 arcpy.mp モジュール ...243 Pro の ArcPy でしかできない処理 ...243

(7)

ArcMap からの移行...244 参考資料 ...244

参照

関連したドキュメント

度の﹁士地勘 L

  BCI は脳から得られる情報を利用して,思考によりコ

現在入手可能な情報から得られたソニーの経営者の判断にもとづいています。実

テキストマイニング は,大量の構 造化されていないテキスト情報を様々な観点から

当社は、お客様が本サイトを通じて取得された個人情報(個人情報とは、個人に関する情報

一五七サイバー犯罪に対する捜査手法について(三・完)(鈴木) 成立したFISA(外国諜報監視法)は外国諜報情報の監視等を規律する。See

の総体と言える。事例の客観的な情報とは、事例に関わる人の感性によって多様な色付けが行われ

「系統情報の公開」に関する留意事項