頂点の間引き(Generalize) (編集)

ライセンス レベル:BasicStandardAdvanced

サマリ

指定した最大許容オフセットに基づき、Douglas-Peucker 単純化アルゴリズムを使用して入力フィーチャを単純化します。出力フィーチャには、元の入力頂点のサブセットが含まれます。

The line is simplified within the boundary of the maximum allowable offset
The line is simplified within the boundary of the maximum allowable offset

使用法

構文

Generalize_edit (in_features, {tolerance})
パラメータ説明データ タイプ
in_features

頂点を間引くポリゴンまたはライン フィーチャ。

Feature Layer
tolerance
(オプション)

最大許容オフセットを設定します。この値によって単純化の度合いが決まります。入力ジオメトリからオフセット可能な出力ジオメトリの最大距離。必要な計測単位を指定できます。デフォルトはフィーチャの単位です。

Linear unit

コードのサンプル

Generalize の例(Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで Generalize 関数を使用する方法を示しています。

import arcpy
from arcpy import env
env.workspace = "C:\data\data.gdb"
arcpy.Generalize_edit("zones", "10 Feet")
Generalize の例 2(スタンドアロン スクリプト)

以下のスタンドアロン スクリプトは、Generalize 関数を使用してフィーチャを先に単純化してからバッファリングを行う方法の例です。

#Name: BufferZones.py
#Purpose: Simplify features using the Generalize tool and then Buffer them
#Author: ESRI

#Import script modules
import arcpy
from arcpy import env

try:
    #Set the workspace
    env.workspace = "C:/data/data.gdb"
    
    #Set local parameters
    inFeatures = "zones"
    gTolerance = "4 Feet"
    copFeatures = "zones_cp"
    bufDist = "50 Miles"
    bufOutput = "zones_buff"
    
    #Since Generalize permanently updates the input, first make a copy of the original FC
    arcpy.CopyFeatures_management (inFeatures, copFeatures)
    
    #Use the Generalize tool to simplify the Buffer input to shorten Buffer processing time
    arcpy.Generalize_edit(copFeatures, gTolerance)
    
    #Buffer the output
    arcpy.Buffer_analysis(copFeatures, bufOutput, bufDist, "", "", "", "")

except Exception, e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "Line %i" % tb.tb_lineno
    print e.message

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: ×
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
9/14/2013