ラバーシート フィーチャ (Rubbersheet Features) (編集)

サマリー

指定されたラバーシート リンクを使用してラバーシート処理を行い、空間的に調整することによって、入力フィーチャを変更します。それによって入力フィーチャは、目的のターゲット フィーチャとより正確に一致するようになります。

ラバーシート フィーチャ

使用法

    注意:

    このツールを実行すると、入力データが変更されます。 詳細と不要なデータの変更を回避するための方法については、「入力データを変更または更新するツール」をご参照ください。

  • このツールは、[ラバーシート リンクの生成 (Generate Rubbersheet Links)] ツールの実行後に使用することを目的としています。 ラバーシート処理は、指定されたラバーシート リンクに基づいて、入力フィーチャの位置とターゲット フィーチャの位置がより正確に一致するように、空間的に調整します。 入力リンク フィーチャは、標準のリンクを表します。入力ポイント フィーチャは、ラバーシート処理の実行中にソースの位置を固定する固定リンクを表します。 入力リンク フィーチャと固定リンク フィーチャの両方に、SRC_FID フィールドと TGT_FID フィールドが存在する必要があります。

  • 注意:

    すべての入力は、同じ座標系に存在する必要があります。

  • [方法] パラメーターでは、ラバーシートでテンポラリ TIN の作成に使用される内挿法を指定します。

    • [リニア] - この方法は、簡易 TIN サーフェスを作成しますが、近傍を考慮に入れません。 この方法は、他の方法よりもわずかに高速であり、調整対象のデータに多くのラバーシート リンクが一様に拡散している場合に効果的です。
    • [Natural neighbor] - この方法は、他の方法よりも低速ですが、ラバーシート リンクの数が少なく、データセット全体に拡散している場合、より正確になります。 この場合、リニア内挿法を使用すると、結果の精度が低下します。

パラメーター

ラベル説明データ タイプ
入力フィーチャ

調整対象の入力フィーチャ。 調整できる入力フィーチャは、ポイント、ライン、ポリゴン、またはアノテーションです。

Feature Layer
入力リンク フィーチャ

ラバーシートの標準のリンクを表す入力ライン フィーチャ。

Feature Layer
固定リンクとしての入力ポイント フィーチャ
(オプション)

ラバーシート処理の固定リンクを表す入力ポイント フィーチャ。

Feature Layer
方法
(オプション)

フィーチャの調整に使用されるラバーシート方法を指定します。

  • リニアこの方法は、他の方法よりもわずかに高速であり、アジャスト対象のデータに多くのリンクが一様に拡散している場合に効果的です。 これがデフォルトです。
  • Natural Neighborこの方法は、広い範囲に広がって小数のリンクが存在する場合に使用します。
String

派生した出力

ラベル説明データ タイプ
修正された入力フィーチャ

更新された入力フィーチャ。

Feature Layer

arcpy.edit.RubbersheetFeatures(in_features, in_link_features, {in_identity_links}, {method})
名前説明データ タイプ
in_features

調整対象の入力フィーチャ。 調整できる入力フィーチャは、ポイント、ライン、ポリゴン、またはアノテーションです。

Feature Layer
in_link_features

ラバーシートの標準のリンクを表す入力ライン フィーチャ。

Feature Layer
in_identity_links
(オプション)

ラバーシート処理の固定リンクを表す入力ポイント フィーチャ。

Feature Layer
method
(オプション)

フィーチャの調整に使用されるラバーシート方法を指定します。

  • LINEARこの方法は、他の方法よりもわずかに高速であり、アジャスト対象のデータに多くのリンクが一様に拡散している場合に効果的です。 これがデフォルトです。
  • NATURAL_NEIGHBORこの方法は、広い範囲に広がって小数のリンクが存在する場合に使用します。
String

派生した出力

名前説明データ タイプ
out_feature_class

更新された入力フィーチャ。

Feature Layer

コードのサンプル

RubbersheetFeatures の例 1 (Python ウィンドウ)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.edit.RubbersheetFeatures("source_Roads.shp","rubbersheet_Links.shp",
                               "rubbersheet_Links_pnt.shp", "LINEAR")
RubbersheetFeatures の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、RubbersheetFeatures 関数をスクリプティング環境で適用する方法の例を示しています。

# Name:        RubbersheetFeatures_example_script2.py
# Description: Performs rubbersheeting spatial adjustment using links produced by
#              GenerateRubbersheetLinks, assuming newly updated roads are more
#              accurate than existing base roads. The links go from base road data
#              to corresponding newly updated road data. The links are then
#              analyzed for potential errors; they are finally used to adjust the
#              base roads (a copy is made) to better align with the updated roads.
# Author:      Esri
# -----------------------------------------------------------------------

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.overwriteOutput = True
env.workspace = r"D:\conflationTools\ScriptExamples\data.gdb"

# Set local variables
sourceFeatures = "baseRoads"
targetFeatures = "updateRoads"
grlOutput = "grlinks_out"
grlOutputPts = "grlinks_out_pnt"

search_distance = "300 Feet"
match_fields = "FULLNAME RD_NAME"

qaLocations = "qa_locations"

# Generate rubbersheet links
arcpy.GenerateRubbersheetLinks_edit(sourceFeatures, targetFeatures, grlOutput, search_distance, match_fields)

# ====================================================================================
# Note 1:  The result of GenerateRubbersheetLinks may contain errors; see tool reference.
#          Inspection and editing may be necessary to ensure correct links before using
#          them for rubbersheeting.
#
#          One of the common errors are intersecting or touching links. Their locations 
#          can be found by the process below.
# ====================================================================================

# Find locations where links intersect or touch; the result contains coincident points
arcpy.Intersect_analysis(grlOutput, qaLocations, "", "", "POINT")

# Delete coincident points
arcpy.DeleteIdentical_management(qaLocations, "Shape")

# ====================================================================================
# Note 2:  At this point you can manually inspect locations in qaLocations; delete or
#          modify links as needed.
# ====================================================================================

# Make a copy of the sourceFeatures for rubbersheeting
arcpy.CopyFeatures_management(sourceFeatures, "sourceFeatures_Copy")

# Use the links for rubbersheeting
arcpy.RubbersheetFeatures_edit("sourceFeatures_Copy", grlOutput, grlOutputPts, "LINEAR")

ライセンス情報

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

関連トピック