デフォルト空間グリッド インデックスの計算(Calculate Default Spatial Grid Index) (データ管理)
サマリ
入力フィーチャクラスの一連の有効なグリッド インデックスの値(空間グリッド 1、2、3)を計算します。グリッド インデックスの値は、入力フィーチャで空間グリッド インデックスがサポートされていない場合でも計算されます。
空間インデックスの詳細使用法
グリッド インデックスの値はツールからのメッセージとして返されます。この値は、ジオプロセシングの [結果] ウィンドウで確認できます。あるいは、ツール実行の result オブジェクトにアクセスして、スクリプトで値を変数に割り当てることもできます。
-
[入力フィーチャ] の空間グリッド インデックスはこのツールによって更新されません。ファイル ジオデータベースまたは SDE ジオデータベースのフィーチャクラスの空間グリッド インデックスは、[空間インデックスの追加 (Add Spatial Index)] ツールを使用するか、フィーチャクラスのプロパティ ページの [インデックス] タブで変更することができます。
-
このツールによって返される一連の値は、[空間インデックスの追加 (Add Spatial Index)] ツールや [フィーチャのコピー (Copy Features)] ツールで使用したり、[出力データの空間グリッド] 環境設定に使用したりすることができます。
-
返されるグリッド サイズは、入力フィーチャ内の空間参照、平均フィーチャ サイズ、およびフィーチャ数に基づきます。
構文
パラメータ | 説明 | データ タイプ |
in_features |
有効な空間グリッド インデックスを計算する対象となるフィーチャ | Feature Layer; Raster Catalog Layer |
コードのサンプル
次の Python ウィンドウ スクリプトで、CalculateDefaultGridIndex (デフォルト空間グリッド インデックスの計算)関数をイミディエイト モードで使用する方法を示します。
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.CalculateDefaultGridIndex_management("rivers.shp")
次のスタンドアロン スクリプトでは、CalculateDefaultGridIndex (デフォルト空間グリッド インデックスの計算)関数をワークフローで使用して、FC の空間インデックスを更新します。
# Name: UpdateSI_Example.py
# Description: Use Calculate Default Grid Index to update the spatial index of a FC
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set the workspace
env.workspace = "C:/data/data.gdb"
# Set local parameters
inFeatures = "river"
try:
# Get the grid sizes from the tool, this is a string with 3 semi-colon seperated values (typically something like "1500; 0; 0")
result = arcpy.CalculateDefaultGridIndex_management(inFeatures)
indexGrids = []
for count in range(0, result.outputCount):
indexGrids.append(result.getOutput(count))
# First remove the existing grid index
try:
arcpy.RemoveSpatialIndex_management(inFeatures)
except:
# if no index exists, RemoveSpaitalIndex will fail, but just keep going
pass
# Now add the indexes calculated by the tool
arcpy.AddSpatialIndex_management(inFeatures, indexGrids)
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.args[0]