ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

カーソルの空間参照の設定

フィーチャクラスの空間参照は、そのフィーチャクラスの座標系、空間ドメイン、および精度を記述します。

  • 座標系は地図投影と似ています (たとえば、地理座標系、ユニバーサル横メルカトル図法 [UTM]、State Plane)。座標系は、格納されている座標と、地球上での実際の位置の間にある数学的な関係を定義します。
  • 空間ドメインとは、分かりやすく言うと、x,y 座標、m (メジャー) 値、および z 値として指定可能な座標の範囲です。
  • 解像度とは、計測単位あたりのシステム単位数を表します。

デフォルトでは、検索カーソルから返されるジオメトリの空間参照は、カーソルによって開かれたフィーチャクラスの空間参照と同じです。更新カーソルまたは挿入カーソルに空間参照を設定することもできます。

UpdateCursor または InsertCursor に対して空間参照を設定するとき、そのカーソルによって書き込むジオメトリの空間参照を宣言します。たとえば、UTM 座標を使用するフィーチャクラスにジオメトリを挿入したいとします。State Plane 座標を含むテキスト ファイルからジオメトリを読み取って、このフィーチャクラスに挿入します。フィーチャクラスの空間参照 (UTM) は、テキスト ファイルから読み取るジオメトリの空間参照 (State Plane) とは異なります。このフィーチャクラスに対して InsertCursor を開くときには、カーソルの空間参照を State Plane に設定し、挿入するジオメトリを State Plane から UTM に変換するように宣言します。したがって、InsertCursor または UpdateCursor の空間参照を設定する必要があるのは、書き込むジオメトリがカーソルのフィーチャクラスとは別の空間参照を使用しているときだけです。

SearchCursor の場合は、カーソルのフィーチャクラスの空間参照とは異なる空間参照を指定すると、ジオメトリがカーソルの空間参照に変換されます。

次の例では、ポイント フィーチャクラスは座標系 UTM zone 21 north を使用します。この座標系は空間参照で定義されています。このスクリプトは、ポイントの座標を 10 進表記の度で示すテキスト ファイルを生成します。

import arcpy
# Describe a feature class with a geographic coordinate system
#
desc = arcpy.Describe("d:/base/data.gdb/latlongbnd")
# Create search cursor. Use the spatial reference object from the
#   described feature class so geometries are returned in decimal degrees.
#
rows = arcpy.da.SearchCursor("d:/base/data.gdb/buildings", ["SHAPE@"], 
                             spatial_reference=desc.spatialReference)
# Open the file for output. This also creates the file if it does not exist.
#
out = open(arcpy.GetParameterAsText(0), "w")
# Print the coordinates of each building point feature
#
for row in rows:
    # Get the geometry's point object.
    #
    pnt = row[0].getPart()
    # Write the x,y coordinate to the output file
    #
    out.write('{};{}\n'.format(pnt.X, pnt.Y)
# Close the output file
#
out.close()

関連トピック

  • カーソルを使用したデータへのアクセス
  • Python でのクエリの指定
  • ジオメトリの読み取り
  • ジオメトリの作成

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2019 Esri. | プライバシー | リーガル