空間参照の作成(Create Spatial Reference) (データの管理)
サマリ
ModelBuilder とスクリプトで使用するために空間参照オブジェクトを作成します。
使用法
-
空間参照オブジェクトは、座標系、空間ドメイン、および 精度 を設定して作成できます。出力された空間参照の空間ドメインと精度は、[XY ドメイン]、[Z 値ドメイン]、[M 値ドメイン]、[テンプレートとする XY ドメイン]、および [パーセンテージによる XY ドメインの拡大] パラメータを使用してさらに変更することができます。
-
[テンプレートとする XY ドメイン] は、[空間参照] または [テンプレートとする空間参照] で指定した座標系と同じ座標系である必要はありません。座標系が異なる場合は、範囲が一致するように投影変換されます。
-
[空間参照] と [テンプレートとする空間参照] パラメータが両方とも設定されている場合は、[空間参照] パラメータが優先されます。
-
このツールのパラメータはすべてオプションです。いずれのパラメータも指定されない場合、空間参照は「Unknown(不明)」と定義され、XYDomain(XY ドメイン)は標準(デフォルト)の値をとります。
-
ModelBuilder では、このツールの出力を、空間参照パラメータを備えるツール([フィーチャクラスの作成 (Create_Feature_Class)]、[フィーチャ データセットの作成 (Create_Feature_Dataset)]、[XY イベント レイヤの作成 (Make_XY_Event_Layer)] など)の入力として使用できます。
構文
パラメータ | 説明 | データ タイプ |
spatial_reference (オプション) |
作成する参照空間オブジェクトの名前。 | Spatial Reference |
spatial_reference_template (オプション) |
空間参照の値を設定するためのテンプレートとして使用するフィーチャクラスまたはレイヤ。 | Feature Layer; Raster Catalog Layer; Raster Dataset |
xy_domain (オプション) |
XY 座標として指定可能な座標の範囲。 | Envelope |
z_domain (オプション) |
Z 値として指定可能な座標の範囲。 | String |
m_domain (オプション) |
M 値として指定可能な座標の範囲。 | String |
template [template,...] (オプション) |
XY ドメインの定義に使用可能なフィーチャクラスまたはレイヤ。 | Feature Layer |
expand_ratio (オプション) |
XY ドメインが拡大されるパーセンテージ。 | Double |
コードのサンプル
次のスタンドアロン スクリプトでは、ワークフロー(フォルダをループ処理して、「ST」で終わるすべてのシェープファイルを検索する)の一部として CreateSpatialReference(空間参照の作成)関数を使用して、空間参照を作成し、それらをジオデータベース フィーチャクラスへ追加します。
# Name: findSTshp.py # Purpose: Loops through a folder and finds all shapefiles that end with "ST" # (all the street shapefiles), creates a geodatabase feature class, # and appends all the shapefiles into it. # Author: ESRI # Import system modules import arcpy import os from arcpy import env try: #Set the workspace env.workspace = "c:\data" fds = arcpy.ListWorkspaces() print fds fcList = [] for fd in fds: env.workspace = fd fcs = arcpy.ListFeatureClasses("*ST") for fc in fcs: fcList.append(fd + os.sep + fc) fc1 = fcList[0] print fc1 print fcList sr = arcpy.CreateSpatialReference_management("",fc1,"","","",fcList) outFC = arcpy.CreateFeatureclass_management ('c:/data/gdb.mdb', 'gdt2', 'polyline',fc1, "","", sr) arcpy.Append_management(fcList, outFC, 'no_test') 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 print "FINISHED"