バッファーの作成 (Create Buffers) (GeoAnalytics Desktop)

サマリー

指定した距離に基づき、入力フィーチャの周囲にバッファーを作成します。

使用法

  • [方法] パラメーターは、バッファーの作成方法を決定します。 バッファーを構築する基本的な方法には、ユークリッド バッファーと測地線バッファーの 2 種類があります。

    • ユークリッド バッファーは、二次元のデカルト平面内で距離を計測します。そこでは、直線距離、すなわちユークリッド距離が、平面 (デカルト平面) 上の 2 点間で計算されます。 ユークリッド バッファーの方が一般的なバッファーであり、投影座標系内の比較的狭い領域 (UTM ゾーンなど) に集中するフィーチャの周辺の距離を解析する場合に適しています。 ユークリッド バッファーは、平面バッファーと呼ばれます。
    • 測地線バッファーは、地球の実際の形状 (楕円体、より正確にはジオイド) を形成します。 平面 (デカルト平面) 上の 2 点間ではなく、曲面 (ジオイド) 上の 2 点間の距離が計算されます。 以下の状況の場合、測地線バッファーを作成することを必ず検討してください。
      • 入力フィーチャが分散している場合 (複数の UTM ゾーン、広い領域、または地球全体をカバーしている場合)。
      • 入力フィーチャの空間参照 (地図投影法) によって、面積などの他の特性を保護するために距離が歪んでしまう場合。

  • 測地線バッファーは平面マップ上では異常な外観を示すことがありますが、これらのバッファーをグローブに表示した場合、正常な外観になります。

  • [方法] パラメーターは、バッファーの作成方法を決定します。

    • [平面] 方法では、入力フィーチャの座標系に基づいて、使用する方法が自動的に識別されます。
      • 入力フィーチャで投影座標系が使用されている場合、ユークリッド バッファーが作成されます。
      • 入力フィーチャで地理座標系が使用されている場合、測地線バッファーが作成されます。
    • デフォルトは [測地線] です。 [測地線] 方法を指定すると、入力座標系にかかわらず、形状が正確に維持された測地線バッファーが作成されます。 形状を維持した測地線バッファーは、出力の測地線バッファーを作成する前に、入力フィーチャを高密度化します。 これにより、入力フィーチャの形状をより正確に表すバッファーが作成されます。 バッファーの形状が重要であり、それらの形状が元の入力フィーチャにいかに正確に一致しているかが問題になる場合 (特に、入力データで地理座標系が使用されている場合) は、このオプションをお勧めします。 このオプションを使用すると、[平面] オプションを使用して測地線バッファーを作成する場合よりも時間がかかることがありますが、入力フィーチャの形状に正確に一致したバッファーが作成されます。

  • [平面] 方法を使用する際は、地理的に入力に適した正距円錐図法や正距方位図法などの、距離の歪みを最小にする投影法を使用することで、投影された入力から作成されるバッファーの精度を上げることができます。

  • ポリゴン フィーチャをバッファー処理する際には、負数のバッファー距離を使用してポリゴン フィーチャ内部にバッファーを作成することができます。 負数のバッファー距離を使用すると、ポリゴンの境界を指定距離分減らすことができます。

    注意:

    負数のバッファー距離が大きすぎてポリゴンが消失する場合は、NULL ジオメトリが生成されます。 警告メッセージが表示され、NULL ジオメトリのフィーチャは出力データセットに書き出されません。

  • バッファーのサイズは、以下の 3 つのうちいずれかのオプションで入力できます。

    • [距離] - 定数値を使用 (すべてのバッファーは同じサイズ)
    • [フィールド] - フィールドの値を使用 (フィーチャによってバッファーのサイズが異なることがあります)
    • [式] - 各フィーチャに式を適用 (式に基づき、フィーチャごとに値が異なることがあります)

      バッファー式の適用の詳細

  • デフォルトでは、[バッファーの作成] ツールは、バッファー エリア同士が交わる場合、重なり合うバッファーを作成します。 入力フィーチャがエリアの場合、入力エリアがバッファー内に含まれます。 ディゾルブおよびマルチマート パラメーターを使用すると、重なり合うバッファーをコントロールできます。 ディゾルブ オプションには、次の 3 つがあります。

    • [なし] - デフォルト。 バッファーは、バッファー領域が交わる部分で重なり合います。
    • [すべて] - すべてのフィーチャがディゾルブします。 マルチパート パラメーターが、すべてのフィーチャが 1 つのフィーチャにディゾルブするか (マルチパートが true)、重複フィーチャのみがディゾルブするか (マルチパートが false) を指定します。
    • [フィールド] - フィーチャは、フィールド値に基づいてディゾルブします。 1 つまたは複数のフィールドを選択すると、類似の値はディゾルブします。 マルチパート パラメーターが、一致するすべてのフィールド フィーチャが 1 つのフィーチャにディゾルブするか (マルチパートが true)、一致する重複フィールド フィーチャのみがディゾルブするか (マルチパートが false) を指定します。

  • [入力レイヤー] パラメーターのフィールドをバッファー距離の取得に使用する場合、フィールド値として、数値 (5 など) または有効な距離単位の付いた数値 (5 キロメートルなど) のいずれかを使用できます。 フィールド値が数値の場合、距離には、[入力レイヤー] パラメーターの空間参照の距離単位を使用すると見なされます。ただし、入力レイヤーが地理座標系の場合を除きます。地理座標系の場合、値はメートル単位と見なされます。 フィールド値に指定された距離単位が無効であるか、認識できない場合、デフォルトで入力フィーチャの空間参照の距離単位が使用されます。

  • [すべて] または [フィールド] でディゾルブすると、統計を計算できます。 統計は、すべてのフィーチャまたはフィールド値のディゾルブにのみ適用され、地理的には適用されません (マルチパート パラメーターを使用)。 次のスクリーンショットに示す 6 つのフィーチャで、これらのオプションがどのように機能するかを以下のテーブルに示します。 フィールドのディゾルブに使用されるフィーチャ値は色分けされています (青かオレンジ)。

    バッファーのディゾルブの例に使用する入力ポイント

    ディゾルブ オプションマルチパートが false (デフォルト)マルチパートが true
    なし
    ディゾルブが適用されていないバッファー オプション

    6 つのフィーチャは、バッファーされたフィーチャにディゾルブが適用されていないときに作成されます。 これがデフォルトです。 これは、標準解析ツールの [オーバーラップ] オプションと同じです。

    マルチパートは、ディゾルブ オプションが [なし] の場合には true にはなりません。

    すべて
    マルチパートが false ですべてのフィーチャがディゾルブしている状態

    すべての値がディゾルブされ、マルチパートが false の場場合には、3 つのフィーチャが作成されます。 ディゾルブされるのは、重なり合うフィーチャのみです。 これは、標準解析ツールの [ディゾルブ] オプションと同じです。

    マルチパートが true ですべてのフィーチャがディゾルブしている状態

    すべての値がディゾルブされ、マルチパートが true の場合には、1 つのフィーチャが作成されます。 このオプションを選択すると、結果は常に 1 つのフィーチャになります。

    フィールド
    類似した値を持つフィーチャが、マルチパート false でディゾルブされる

    フィールドに基づいて (ここでは、フィールドは入力ポイントの色) ディゾルブが適用される場合には、4 つのフィーチャが作成されます。 指定フィールドと同じ値を持つ、重なり合うフィーチャのみがディゾルブします。

    類似した値を持つフィーチャが、マルチパート true でディゾルブされる

    フィールドに基づいて (ここでは、フィールドは入力ポイントの色) ディゾルブが適用され、マルチパートが許可されている場合には、2 つのフィーチャが作成されます。 同じフィールド値を持つフィーチャは、常に 1 つのフィーチャになります。

  • 式のバッファー タイプを使用して、数値フィールドおよび数学演算子から式を作成できます。 詳細については、「GeoAnalytics Desktop ツールの Arcade」をご参照ください。 特に指定しない限り、バッファー式内の数値はメートル単位であると仮定されます。

  • 次のツールを使用して、類似の解析を実行することもできます。

  • 出力データセットには、各フィーチャのバッファー処理に使用するバッファー距離が、入力フィーチャの座標系の距離単位で格納される BUFF_DIST があります。 出力座標系を設定する場合、BUFF_DIST の単位はこの座標系になります。 同じフィールドが出力内にすでに存在している場合は、フィールド名の重複を回避するために、その名前の末尾に番号が付加されます (たとえば、BUFF_DIST1)。

  • 次の 1 つまたは複数の操作を実行して、[バッファーの作成 (Create Buffers)] ツールのパフォーマンスを向上させることができます。

    • 対象データのみが解析されるように、範囲環境を設定します。
    • 平面バッファーを使用します。
    • バッファーの出力をディゾルブしないでください。
    • 解析が実行されている場所に対してローカルなデータを使用します。

  • ジオプロセシング ツールは、Spark を活用しています。解析は、複数のコアを並列に使用して、デスクトップ コンピューター上で実行されます。解析の実行方法の詳細については、「GeoAnalytics Desktop ツールに関する考慮事項」をご参照ください。

  • GeoAnalytics Desktop ツールを実行する場合、解析はデスクトップ コンピューター上で実行されます。最適なパフォーマンスを実現するには、データがデスクトップ上で使用可能である必要があります。ホスト フィーチャ レイヤーを使用している場合は、ArcGIS GeoAnalytics Server を使用することをお勧めします。データがローカルに存在していない場合、ツールの実行時間が長くなります。ArcGIS GeoAnalytics Server を使用して分析を行うには、GeoAnalytics Toolsをご参照ください。

パラメーター

ラベル説明データ タイプ
入力レイヤー

バッファーを作成するポイント フィーチャ、ポリライン フィーチャ、またはポリゴン フィーチャ。

Feature Layer
出力フィーチャクラス

バッファー処理結果の新しいフィーチャクラス。

Feature Class
方法

バッファーの作成に使用する方法を指定します。

  • 測地線バッファーは、入力データの座標系にかかわらず、形状を維持した測地線バッファー方法を使用して作成されます。 これがデフォルトです。
  • 平面入力フィーチャで投影座標系が使用されている場合、ユークリッド バッファーが作成されます。 入力フィーチャで地理座標系が使用されている場合、測地線バッファーが作成されます。 [出力座標系] 環境設定を使用して座標系を指定できます。
String
バッファー タイプ
(オプション)

バッファー距離の定義方法を指定します。

  • 距離すべてのフィーチャに同じ距離を適用します。
  • フィールドバッファー距離を表す数値フィールドまたは文字列フィールドを選択します。
  • バッファー距離を表すフィールド、定数、および数学演算子を使用して式を構築します。
String
バッファー フィールド
(オプション)

フィーチャごとのバッファー距離を含んでいるフィールド。 フィールド値が数値の場合、距離には、[入力レイヤー] の空間参照の距離単位を使用すると見なされます。ただし、[入力レイヤー] が地理座標系の場合を除きます。地理座標系の場合、値はメートル単位と見なされます。 フィールド値に指定された距離単位が無効であるか、認識できない場合、デフォルトで入力フィーチャの空間参照の距離単位が使用されます。

Field
バッファー距離
(オプション)

バッファー処理する入力フィーチャの周囲の距離。 距離は、メートル、キロメートル、フィート、ヤード、マイル、または海里で表すことができます。

Linear Unit
バッファー条件式
(オプション)

各フィーチャへのバッファーとして適用する、フィールドおよび数学演算子を使用した式。 フィールドは数値である必要があり、式には [ + - * / ] 演算子と複数のフィールドを含めることができます。 特に指定しない限り、計算される値はメートル単位で適用されます。 たとえば、[distance] という名前のキロメートル単位の数値フィールドに 2 を掛けて 15 メートルを足すバッファーを適用します。

as_kilometers($feature["distance"]) * 2 + as_meters(15) のような Arcade 式を使用します。

レイヤーをマップに追加する場合、[フィールド] および [ヘルパー] フィルターを使って条件式を組み立てることができます。

Calculator Expression
ディゾルブ オプション
(オプション)

ディゾルブ オプションを指定すると、バッファーの重複が削除されます。

  • なし重複の有無にかかわらず、各フィーチャの個々のバッファーが維持されます。 これがデフォルトです。
  • すべてすべてのバッファーが 1 つのフィーチャにディゾルブされ、すべての重複が削除されます。
  • リスト(入力フィーチャから引き継がれる) リスト フィールドの属性値を共有するバッファーがディゾルブされます。
String
ディゾルブ フィールド
(オプション)

出力バッファーをディゾルブするために使用する入力フィーチャからの 1 つ以上のフィールドのリスト。 リスト表示されたフィールド内の属性値を共有しているバッファーが、ディゾルブされます。 このオプションは、[ディゾルブ オプション][リスト] の場合にのみ必須になります。

Field
集計フィールド
(オプション)

数値フィールドおよび文字列フィールドに適用する統計情報を指定します。 空のままにした場合、数のみが計算されます。 これらの統計情報は、[ディゾルブ オプション][リスト] または [すべて] の場合にのみ適用されます。

  • [個数] - NULL 値でない値の数。 数値フィールドまたは文字列に使用できます。 [null, 0, 2] の個数は 2 です。
  • [合計] - フィールド内の数値の合計。 [null, null, 3] の合計は 3 です。
  • [平均] - 数値の平均。 [0, 2, null] の平均は 1 です。
  • [最小] - 数値フィールドの最小値。 [0, 2, null] の最小値は 0 です。
  • [最大] - 数値フィールドの最大値。 [0, 2, null] の最大値は 2 です。
  • [標準偏差] - 数値フィールドの標準偏差。 [1] の標準偏差は null です。 [null, 1,1,1] の標準偏差は null です。
  • [分散] - トラッキング内の数値フィールドの分散。 [1] の分散は null です。 [null, 1, 1, 1] の分散は null です。
  • [範囲] - 数値フィールドの範囲。 これは、最大値から最小値を減算して計算されます。 [0, null, 1] の範囲は 1 です。 [null, 4] の範囲は 0 です。
  • [任意] - 文字列型のフィールドのサンプル文字列。

Value Table
マルチパート
(オプション)

マルチパート フィーチャを作成するかどうかを指定します。

  • オン - 必要に応じて出力マルチパート フィーチャが作成されます。
  • オフ - マルチパート フィーチャを作成する代わりに、各パーツにフィーチャが個別に作成されます。 これがデフォルトです。
Boolean

arcpy.gapro.CreateBuffers(input_layer, out_feature_class, method, {buffer_type}, {buffer_field}, {buffer_distance}, {buffer_expression}, {dissolve_option}, {dissolve_fields}, {summary_fields}, {multipart})
名前説明データ タイプ
input_layer

バッファーを作成するポイント フィーチャ、ポリライン フィーチャ、またはポリゴン フィーチャ。

Feature Layer
out_feature_class

バッファー処理結果の新しいフィーチャクラス。

Feature Class
method

バッファーの作成に使用する方法を指定します。

  • GEODESICバッファーは、入力データの座標系にかかわらず、形状を維持した測地線バッファー方法を使用して作成されます。 これがデフォルトです。
  • PLANAR入力フィーチャで投影座標系が使用されている場合、ユークリッド バッファーが作成されます。 入力フィーチャで地理座標系が使用されている場合、測地線バッファーが作成されます。 [出力座標系] 環境設定を使用して座標系を指定できます。
String
buffer_type
(オプション)

バッファー距離の定義方法を指定します。

  • DISTANCEすべてのフィーチャに同じ距離を適用します。
  • FIELDバッファー距離を表す数値フィールドまたは文字列フィールドを選択します。
  • EXPRESSIONバッファー距離を表すフィールド、定数、および数学演算子を使用して式を構築します。
String
buffer_field
(オプション)

フィーチャごとのバッファー距離を含んでいるフィールド。 フィールド値が数値の場合、距離には、input_layer の空間参照の距離単位を使用すると見なされます。ただし、input_layer が地理座標系の場合を除きます。地理座標系の場合、値はメートル単位と見なされます。 フィールド値に指定された距離単位が無効であるか、認識できない場合、デフォルトで入力フィーチャの空間参照の距離単位が使用されます。

Field
buffer_distance
(オプション)

バッファー処理する入力フィーチャの周囲の距離。 距離は、メートル、キロメートル、フィート、ヤード、マイル、または海里で表すことができます。

Linear Unit
buffer_expression
(オプション)

各フィーチャへのバッファーとして適用する、フィールドおよび数学演算子を使用した式。 フィールドは数値である必要があり、式には [ + - * / ] 演算子と複数のフィールドを含めることができます。 特に指定しない限り、計算される値はメートル単位で適用されます。 たとえば、[distance] という名前のキロメートル単位の数値フィールドに 2 を掛けて 15 メートルを足すバッファーを適用します。

as_kilometers($feature["distance"]) * 2 + as_meters(15) のような Arcade 式を使用します。

Calculator Expression
dissolve_option
(オプション)

ディゾルブ オプションを指定すると、バッファーの重複が削除されます。

  • NONE重複の有無にかかわらず、各フィーチャの個々のバッファーが維持されます。 これがデフォルトです。
  • ALLすべてのバッファーが 1 つのフィーチャにディゾルブされ、すべての重複が削除されます。
  • LIST(入力フィーチャから引き継がれる) リスト フィールドの属性値を共有するバッファーがディゾルブされます。
String
dissolve_fields
[dissolve_fields,...]
(オプション)

出力バッファーをディゾルブするために使用する入力フィーチャからの 1 つ以上のフィールドのリスト。 リスト表示されたフィールド内の属性値を共有しているバッファーが、ディゾルブされます。 このオプションは、dissolve_optionLIST の場合にのみ必須になります。

Field
summary_fields
[summary_fields,...]
(オプション)

数値フィールドおよび文字列フィールドに適用する統計情報を指定します。 空のままにした場合、数のみが計算されます。 これらの統計情報は、dissolve_optionLIST または ALL の場合にのみ適用されます。

  • COUNT - NULL 値でない値の数。 数値フィールドまたは文字列に使用できます。 [null, 0, 2] の個数は 2 です。
  • SUM - フィールド内の数値の合計。 [null, null, 3] の合計は 3 です。
  • MEAN - 数値の平均。 [0,2, null] の平均は 1 です。
  • MIN - 数値フィールドの最小値。 [0, 2, null] の最小値は 0 です。
  • MAX - 数値フィールドの最大値。 [0, 2, null] の最大値は 2 です。
  • STDDEV - 数値フィールドの標準偏差。 [1] の標準偏差は null です。 [null, 1,1,1] の標準偏差は null です。
  • VAR - トラッキング内の数値フィールドの分散。 [1] の分散は null です。 [null, 1,1,1] の分散は null です。
  • RANGE - 数値フィールドの範囲。 これは、最大値から最小値を減算して計算されます。 [0, null, 1] の範囲は 1 です。 [null, 4] の範囲は 0 です。
  • ANY - 文字列型のフィールドのサンプル文字列。

Value Table
multipart
(オプション)

マルチパート フィーチャを作成するかどうかを指定します。

  • MULTI_PART必要に応じて出力マルチパート フィーチャが作成されます。
  • SINGLE_PARTマルチパート フィーチャを作成する代わりに、各パーツにフィーチャが個別に作成されます。 これがデフォルトです。
Boolean

コードのサンプル

CreateBuffers (バッファーの作成) の例 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、CreateBuffersツールの使用方法を示しています。

#-------------------------------------------------------------------------------
# Name: CreateBuffers.py
# Description: Buffer damaged building by 300 meters
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/DamageSurvey.gdb"
# Set local variables
inFeatures = "DamageAssessment"
out = "DangerousAreas"
# Execute Create Buffers
arcpy.gapro.CreateBuffers(inFeatures, out, "GEODESIC", "DISTANCE", 
                          None, "300 Meters", None, "ALL", None, None, 
                          "SINGLE_PART")

ライセンス情報

  • Basic: No
  • Standard: No
  • Advanced: Yes

関連トピック