投影法の定義 (Define Projection) (データ管理)

概要

データセットとともに格納されている座標系情報 (マップの投影法と測地基準) を上書きします。このツールは、不明または無効な座標系が定義されているデータセットを対象にしています。

すべての地理データセットには座標系があり、地理データの表示、計測、変換のために ArcGIS で常に使用されます。データセットの座標系が不明または不正の場合、このツールを使用して、正しい座標系を指定できます。このツールを使用する前に、データセットの正しい座標系を知る必要があります。

使用法

  • このツールは、既存の座標系情報の更新だけを行います。ジオメトリは変更しません。ジオメトリを別の座標系に変換するには、[投影変換 (Project)] ツールを使用します。

  • このツールが最もよく使用されるのは、既知の座標系を座標系が不明なデータセット (つまり、データセット プロパティの座標系が「不明」) に割り当てることです。別の用途としては、正しい座標系を不正な座標系が定義されたデータセットに割り当てることです (たとえば、座標が UTM メートルである一方で、地理座標系に定義されている場合など)。

  • 既知の座標系を持つデータセットをこのツールに入力すると、ツールは警告を発行しますが、正常に実行します。

  • フィーチャ データセット内のフィーチャクラスはすべて、同じ座標系になります。ジオデータベース データセットの座標系は、作成時に決定されます。データセットがフィーチャクラスを含むと、その座標系は変更できません。

構文

DefineProjection(in_dataset, coor_system)
パラメーター説明データ タイプ
in_dataset

投影法を定義するデータセットまたはフィーチャクラス。

Feature Layer;Geodataset
coor_system

入力に適用される座標系。デフォルト値は、[出力データの座標系] 環境設定に基づいて設定されます。

有効な値は、空間参照オブジェクト、拡張子が「.prj」のファイル、または座標系の文字列表現です。

Coordinate System

派生した出力

名前説明データ タイプ
out_dataset

更新された入力ジオデータセット。

ジオデータセット

コードのサンプル

DefineProjection (投影法の定義) の例 (Python ウィンドウ)

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

import arcpy
infc = r"C:\data\citylim_unk.shp"
sr = arcpy.SpatialReference("NAD 1983 UTM Zone 11N")
arcpy.DefineProjection_management(infc, sr)
DefineProjection (投影法の定義) の例 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、DefineProjection 関数を使用して、入力データセットの座標系情報を記録します。

# Name: DefineProjection.py 
# Description: Records the coordinate system information for the specified input dataset or feature class

# import system modules
import arcpy

# set workspace environment
arcpy.env.workspace = "C:/data"

try:
    # set local variables
    in_dataset = "citylim_unk.shp" #"forest.shp"
    
    # get the coordinate system by describing a feature class
    dsc = arcpy.Describe("citylim_utm11.shp")
    coord_sys = dsc.spatialReference
    
    # run the tool
    arcpy.DefineProjection_management(in_dataset, coord_sys)
    
    # print messages when the tool runs successfully
    print(arcpy.GetMessages(0))
    
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])

ライセンス情報

  • Basic: はい
  • Standard: はい
  • Advanced: はい

関連トピック