マップ代数演算の規則の概要

Spatial Analyst のライセンスで利用可能。

マップ代数演算には、音声、コンピューター プログラミング、その他のコミュニケーション手段など、すべての言語と同様に、言語コンポーネントを組み合わせるために特定の規則があります。

マップ代数演算のステートメントの一般的な構造は、代入演算子 (=) を使用して、右にアクション、左に出力名 (Raster オブジェクト) を記述します。ステートメントは、次の代数演算形式で表されます。

Output_Name = Action

マップ代数演算のコンポーネント

マップ代数演算式は、5 つのコンポーネントから構成されます。

ツールと関数

マップ代数演算式には、ジオプロセシング ツールおよび関数 (Sin[傾斜角 (Slope)][再分類 (Reclassify)] など) が使用されます。

たとえば、ラスター内の各セルの傾斜方向を計算するには、[傾斜方向 (Aspect)] ツールを使用します。

outRas = Aspect("C:/Data/inraster")

演算子

演算子は、入力に適用する数学演算を表すシンボルです。

たとえば、2 つのラスターを加算するには以下を使用します。

outRas = Raster("inraster1") + Raster("inraster2")

マップ代数演算および Python では多くの演算子が使用されます。演算子は、オーバーロードされます。ラスター データセットに演算子を適用する場合、上に示したように、Raster を使用してデータセットをキャストする必要があります。ラスターをキャストするとラスターに演算が適用されるため、Spatial Analyst の演算子の実装が呼び出され、出力 Raster オブジェクトが出力されます。

ステートメントに数値だけを入力する場合は、Python の演算子の実装が使用され、出力の数値が生成されます。例:

# In the following statement outVar will be set to 15
outVar = 6 + 9

Spatial Analyst に使用できる演算子の完全なリストについては、「マップ代数演算子の概要」をご参照ください。

入力

ラスター、フィーチャ、数値、定数、オブジェクト、変数などの入力エレメントは、ステートメントに適用されるコンポーネントです。

たとえば、入力ラスターの各セルに正弦 (sine) 計算を適用するには、以下を使用します。

outRas = Sin("inraster")

ツール パラメーター

ツール パラメーターは、ツールの実行方法を定義します。各ツールには、一連の独自のパラメーターがあります。一部のパラメーターは必須です。ツールを実行するには、これらに値を設定する必要があります。その他のパラメーターは任意であり、空白のままにするか、デフォルト値を使用することができます。

たとえば、ラスターの傾斜角を計算するには、PERCENT_RISE キーワードを使用して、オプションの出力計測パラメーターを設定します。

outRas = Slope("inraster", "PERCENT_RISE")

出力データ

マップ代数演算式の出力は、テンポラリ ラスター データを参照する Raster オブジェクトです。

たとえば、以下は傾斜角の計算結果を outRas という Raster オブジェクトとして保存します。

outRas = Slope("inraster")
注意:

すべてのジオプロセシング ツールと同様に、マップ代数演算ステートメントでは、環境設定と選択セットが優先されます。

Python と同様に、各入力パラメーター間はカンマで区切ります。引数間のスペースは任意ですが、読みやすくするために推奨します。行の頭にシャープ記号 (#) を付けることで、スクリプトにコメントを追加できます。

# The following statement takes the slope of the input elevation
outRas = Slope("elevation")

関連トピック


このトピックの内容
  1. マップ代数演算のコンポーネント