ラスタ演算(Raster Calculator)での式の構築

[ラスタ演算(Raster Calculator)] ツールで式を構築する場合、ダイアログ ボックスで使用できる複数のレイヤ、変数、ボタン、ツール名を、クリックおよびダブルクリックすると、入力中に起こる可能性のある構文エラーを避けることができます。

[ラスタ演算(Raster Calculator)] ツールに入力する式は Python で実行され、Python は大文字と小文字を区別するため、ツール名の大文字と小文字を正しく区別して使用することが重要です。たとえば、[IsNull] ツールを使用する場合、「IsNull」と入力しなければならず、「Isnull」または「isnull」と入力してはいけません。

複数の関係演算子またはブール演算子を続けて使用する場合、式には括弧が必要です。詳細については、[ラスタ演算(Raster Calculator)] ツールのヘルプにある使用上のヒントをご参照ください。

ラスタ演算(Raster Calculator)ツールのダイアログ ボックスにあるサンプル式

マップ代数演算は、ラスタ演算(Raster Calculator)と Python の両方で使用されますが、注意すべき構文の違いがいくつかあります。

ラスタ演算(Raster Calculator)ツールのダイアログ ボックスの例

以下に、[ラスタ演算(Raster Calculator)] ツールで実行できるマップ代数演算式の例をいくつか示します。これらの式では、ラスタ レイヤ名を引用符で囲みます(たとえば、"dist")。

  • ("pop" > 150) & ("dist" > 10)
  • (("reclass_rd_dist" * 3) + ("reclass_landuse" * 2) + "reclass_elev") /6.0
  • ("Band4" - "Band3") / Float("Band4" + "Band3")
  • Con("elev" <= 3000, 1, 0)
  • Con(IsNull("elev"),0, "elev")
  • Con(("landuse1" == 1) & ("landuse2" == 5), "landuse1" + "landuse2", 99)
  • Con(Raster('elev') != 0,'elev')
  • (Con('elev', 'elev', "", "elev_feet <> 0")) + Raster("tree_height")
  • Con("inRas" < 45,1, Con(("inRas" >= 45) & ("inRas" < 47),2, Con(("inRas" >= 47)&("inRas" < 49),3, Con("inRas" >= 49,4))))

ModelBuilder のラスタ演算式の例

ModelBuilder で [ラスタ演算(Raster Calculator)] ツールを使用する場合、唯一の違いは、レイヤだけでなく変数を入力として使用できることです。構文、使用できる変数のタイプ、ModelBuilder における [ラスタ演算(Raster Calculator)] ツールの接続性の振舞いに関する詳細については、[ラスタ演算(Raster Calculator)] ツールのヘルプをご参照ください。

式での変数およびレイヤの表示方法

以下のサンプルでは、モデルで使用される [ラスタ演算(Raster Calculator)] ツールのマップ代数演算式の構文を示しています。

  • このサンプルでは、ラスタ データセット変数モデル変数(Model Variable))、Long 変数モデル変数(Model Variable))、および ラスタ レイヤレイヤ)が使用されています。

    変数が異なると構文も若干異なることに注意してください。

    変数またはレイヤ名

    変数のタイプ

    式における構文の最初の表示方法

    Reclass Road

    ラスタ データセット変数"%Reclass Road%"

    Rd weight

    Long 変数%Rd weight%

    Reclass Landuse

    ラスタ レイヤ"Reclass Landuse"

    正しい構文で入力を追加する方法

    1. 式のボックスの適切な位置にカーソルを置きます。
    2. 適切なレイヤまたは変数名をダブルクリックします。

    変数とレイヤを用いた式を使用するラスタ演算(Raster Calculator)ツール
    変数とレイヤを用いた式を使用するラスタ演算(Raster Calculator)ツール
  • [OK] をクリックして、[ラスタ演算(Raster Calculator)] ツールのダイアログ ボックスを閉じると、"Reclass Landuse" レイヤがモデル変数としてモデルに追加されます。

  • [ラスタ演算(Raster Calculator)] ツールのダイアログ ボックスが再び開いた場合は、次のことに注意してください。

    1. Reclass Landuse 変数が [レイヤと変数] のリストに追加されます。
    2. 式の構文が、レイヤの構文("Reclass Landuse")から変数の構文("%Reclass Landuse%")に更新されました。
    変数を用いた式を使用するラスタ演算(Raster Calculator)ツール
    変数を用いた式を使用するラスタ演算(Raster Calculator)ツールの例

関連トピック

9/17/2013