ラインの切詰め(Trim Line) (編集)
サマリ
ラインの交点からの長さが指定した長さより短いセグメント(ダングル)を削除します。片方または両方の端点が別のラインと接していないラインの、交点からの長さが指定した長さより短いセグメント(ダングル)だけが削除されます。
このツールは品質管理タスクを目的としています。たとえば、適切なスナップ環境が設定されていない状態でフィーチャをデジタイズした場合、このツールを使用してトポロジー エラーを修正します。
図
使用法
片方または両方の端点が別のラインと接していないラインが切詰められます。この条件を満たすラインには次の 2 種類があります。
- ライン ダングル。ダングルとは、別のラインとの交点から、別のラインと接していないラインの端点までの部分を指します。
- 独立したフィーチャ。独立したフィーチャは他のラインと接しても交差してもいません。このようなフィーチャを削除するには、[短いフィーチャの削除] オプションを使用する必要があります。
-
[ダングルの長さ] が指定されていない場合、ダングル(片方または両方の端点が別のラインと接していないラインのセグメント)は長さに関わらず交点の位置ですべて削除されます。
-
[短いフィーチャの削除] オプションを使用した場合、全体の長さが [ダングルの長さ] で指定されている長さ以下の独立したフィーチャもすべて削除されます。このオプションを使用しない場合、ダングルだけが削除されます。
-
フィーチャが選択されているフィーチャ レイヤまたはフィーチャクラスを入力として使用した場合、選択されているフィーチャだけが切詰められます。削除すべきダングルが存在するかどうかはレイヤまたはフィーチャクラス内のすべてのフィーチャを基に判定されますが、切詰められるのは選択されているフィーチャだけです。
-
このツールでは、パーソナル/ファイル/ArcSDE ジオデータベース フィーチャクラス内の長さ以外のフィーチャ属性は変更されません。
このツールを使用すると入力データが変更されます。詳しい説明および不適切なデータ変更を防ぐための方法については、「出力を伴わないツール」をご参照ください。
構文
パラメータ | 説明 | データ タイプ |
in_features |
切詰める入力ライン フィーチャ。 | Feature Layer |
dangle_length (オプション) |
[ダングルの長さ] で指定した長さ以下の、別のラインとの交点で終了していないセグメント(ダングル)が削除されます。 [ダングルの長さ] が指定されていない場合、ダングル(片方または両方の端点が別のラインと接していないラインのセグメント)は長さに関わらず交点の位置ですべて削除されます。 | Linear Unit |
delete_shorts (オプション) |
ダングル長より短い独立したセグメントを削除するかどうかを指定します。
| Boolean |
コードのサンプル
次の Python ウィンドウのスクリプトではラインの切詰めツールが使用されています。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.TrimLine_edit("majorrds.shp", "15 Feet", "DELETE_SHORT")
適切なスナップ環境が設定されていない状態でデジタイズされた道路の中心線をクリーンナップします。
# Name: ExtendLine.py
# Description: Clean up street centerlines that were digitized without
# having set proper snapping environments
# Author: ESRI
# import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Make backup copy of streets feature class, since modification with
# the Editing tools below is permanent
streets = "majorrds.shp"
streetsBackup = "C:/output/Output.gdb/streetsBackup"
arcpy.CopyFeatures_management(streets, streetsBackup)
# Trim street lines to clean up dangles
arcpy.TrimLine_edit(streets, "10 Feet", "KEEP_SHORT")
# Extend street lines to clean up dangles
arcpy.ExtendLine_edit(streets, "15 Feet", "EXTENSION")