Advanced のライセンスで利用可能。
概要
指定した入力カバレッジ フィーチャの周囲にバッファー ポリゴンを作成します。
図
使用法
POLY オプションでは、バッファー距離に負の距離と正の距離を使用できます。バッファー アイテムに正の数と負の数が含まれるときに、同じカバレッジ内の一部のポリゴンを縮小し、他のポリゴンを拡大することができます。
ROUND、FLAT、FULL、LEFT、および RIGHT オプションは、ライン データにのみ適用されます。
小さいスリバー ポリゴンが [バッファー (Buffer)] ツールで作成されることがあります。それらは、バッファー ゾーン内でノンバッファー エリアとしてコード化されたときに問題を起こす場合があります。[エリミネート (Eliminate)] ツールで削除してください。
バッファー距離がゼロの場合、フィーチャはバッファーされません。入力カバレッジのフィーチャをバッファーしたくない場合は、バッファー アイテムにバッファー距離値ゼロを設定するか、バッファー テーブルにバッファー距離値 DIST を設定します。
島ポリゴンを含むカバレッジでバッファー処理を行うと、バッファー距離がゼロより大きいポリゴンがすべてバッファーされます。ただし、島バッファー全体が周囲のポリゴン バッファー内にあるため、[バッファー (Buffer)] ツールのディゾルブ段階で周囲のポリゴンにディゾルブされ、島バッファーは見えなくなります。
ノードは、NAT の有無にかかわらず、カバレッジにバッファーできます。NAT がない場合、AAT のノードを番号付けする必要があります (FNODE# と TNODE# はゼロより大きくなければなりません)。ノード番号がゼロのときは、[リノード (Renumber Nodes)] を実行します。
LEFT および RIGHT オプションを指定すると、ラインの左側か右側にバッファーが生成されます。ラインの「左」または「右」を解釈する際には、注意が必要です。1 つのライン セグメントによって 2 つの半平面が定義され、長方形バッファーは 2 つの明確に定義された左側および右側のセクションに分割されます。線分を繋ぐ際には、一方の線分の左側のポイントが、接続する他方の線分の右側にある可能性があります。こうしたあいまいさは、「ラインを越えない」という概念によって回避することができます。
LEFT および RIGHT オプションは、トポロジ的なラインの左右を使用するため、これらのオプションを使用するにはライン トポロジが存在しなければなりません。Line バッファー スタイルにアクセスするには、LINE および NODE を指定して入力カバレッジに [ビルド (Build)] を使用します。
BUFFER 関数は、ユークリッド空間で機能し、2 次元のアルゴリズムを使用します。バッファーの幅は、座標系にかかわりなく同じになります。地球の曲率や形状は反映されません。最善の結果を得るために、対象エリアの歪みを最小限にするマップ投影法でバッファーを生成します。
ラインの周囲のバッファーについては、出力カバレッジのファジー許容値は、入力カバレッジのファジー許容値と同じにならない可能性があります。出力許容値は、バッファー距離の関数としてリセットされることがあります。これは、大きいバッファー距離で起きる可能性があり、固定数の直線セグメントでの円の近似が次第に粗くなることを反映しています。この影響を避けるために、バッファーを段階的に拡大することができます。まず、小さいバッファー距離を使用して LINE オプションで [バッファー (Buffer)] を実行し、次に、望ましいバッファー距離に達するまで、POLY オプションを使用してこれに対して [バッファー (Buffer)] を繰り返し実行します。ファジー許容値は、ラインの周囲のバッファーについてのみ変化します、ポリゴンの周囲のバッファーでは変化しません。
出力カバレッジの座標精度は、派生カバレッジの精度環境設定で設定された現在の処理ルールによって決定されます。処理ルールが現在のセッション中に確立されていない場合、処理ルールは HIGHEST になります。つまり、[バッファー (Buffer)] は出力カバレッジを入力カバレッジと同じ精度で作成します。
単精度および倍精度の両方のカバレッジで、[バッファー (Buffer)] ツールはカバレッジの数学的精度 (BND の幅と小数点以下の桁数) に基づき、最小許容値を計算します。計算した最小許容値が入力したファジー許容値より大きい場合、計算した最小許容値が使用されます。
投影情報ファイル (PRJ) は、出力カバレッジにコピーされます。
構文
arcpy.arc.Buffer(in_cover, out_cover, {feature_type}, {buffer_item}, {buffer_table}, {buffer_distance}, {fuzzy_tolerance}, {buffer_shape}, {buffer_side})
パラメーター | 説明 | データ タイプ |
in_cover | バッファーされるフィーチャを含むカバレッジ。 | Coverage |
out_cover | 作成されるポリゴン バッファー カバレッジ。 | Coverage |
feature_type (オプション) | バッファーするフィーチャクラス:
| String |
buffer_item (オプション) | フィーチャのバッファー距離としてその値が使用される入力カバレッジのフィーチャ属性テーブル内のアイテム。バッファー テーブルが使用される場合、バッファー アイテムはバッファー テーブルのルックアップ アイテムとして機能します。 | String |
buffer_table (オプション) | バッファー アイテムごとのバッファー距離をリストする INFO ルックアップ テーブル。バッファー テーブルを指定できるのは、バッファー アイテムを指定した場合に限られます。バッファー テーブルは少なくとも次の 2 つのアイテムを含みます。
| INFO Table |
buffer_distance (オプション) | バッファー アイテムおよびバッファー テーブルが指定されていないときに、入力カバレッジ フィーチャの周囲にバッファー ゾーンを作成するために使用される距離。デフォルトのバッファー距離は 0.125 カバレッジ単位です。このパラメーターの値が指定されないときには、常にデフォルトのバッファー値が適用されます。 計算可能な最小バッファー距離は 0.00000005 カバレッジ単位です。この閾値より小さいバッファー距離を指定すると、出力カバレッジは空になります。ポリゴン フィーチャの場合、負数のバッファー距離を使用すると、ポリゴン内部にバッファーを生成することができます。 | Double |
fuzzy_tolerance (オプション) | out_cover 内の座標間の最小距離。デフォルトでは、in_cover の最小ファジー許容値が使用されます。 | Double |
buffer_shape (オプション) | ラインの場合、ラインの端点のバッファーの形状。
| String |
buffer_side (オプション) | ラインの場合に、バッファーを生成するトポロジ的な側。
| String |
コードのサンプル
SimplifyBuilding (建物ポリゴンの単純化) の例 (スタンドアロン スクリプト)
次のスタンドアロン スクリプトは、道路カバレッジの周囲にバッファーを作成する方法を示しています。
# Name: Buffer_Example.py
# Description: Creates a buffer around a road coverage.
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover = "road"
outCover = "C:/output/roadbuf"
featureType = "LINE"
bufferDistance = 200
bufferShape = "ROUND"
bufferSide = "FULL"
# Execute Buffer
arcpy.Buffer_arc(inCover, outCover, featureType, "", "", bufferDistance, "",
bufferShape, bufferSide)
環境
ライセンス情報
- Basic: いいえ
- Standard: いいえ
- Advanced: 次のものが必要 ArcInfo Workstation がインストールされていること