创建空间参考 (数据管理)

描述

创建用于 模型构建器 的空间参考。

使用方法

  • 可使用已设置的坐标系、空间域和精度创建空间参考。要进一步修改输出空间参考的空间域和精度,可使用 XY 值域Z 值域M 值域XY 值域模板XY 值域增长百分比参数。

  • XY、Z 和 M 范围与空间参考域有所不同。空间参考中的 XY、Z 和 M 域用于定义可存储在要素类中的坐标值的有效范围。要素类范围反映了存在于要素类中的坐标值的实际范围。这些范围不能大于域。

  • XY 值域模板参数所在的坐标系不必与空间参考空间参考模板中所指定的坐标系相同。如果两个坐标系不同,则会对范围进行投影以使其相互匹配。

  • 如果空间参考空间参考模板参数均已设置,则空间参考参数具有较高的优先级。

  • 此工具的所有参数均为可选设置。如果未指定任何参数,则空间参考将被定义为“未知”,而 XY 值域则将采用标准默认设置。

  • 模型构建器 中,可使用空间参考参数(如创建要素类创建要素数据集创建 XY 事件图层)将此工具的输出用作工具的输入。

  • 在 Python 中,还可使用 SpatialReference 类创建空间参考。

语法

arcpy.management.CreateSpatialReference({spatial_reference}, {spatial_reference_template}, {xy_domain}, {z_domain}, {m_domain}, {template}, {expand_ratio})
参数说明数据类型
spatial_reference
(可选)

要创建的空间参考的名称。

Spatial Reference
spatial_reference_template
(可选)

要用作模板的要素类或图层,用于设置空间参考的值。

Feature Layer; Raster Dataset
xy_domain
(可选)

允许的 x,y 坐标的坐标范围。

Envelope
z_domain
(可选)

允许的 z 值的坐标范围。

String
m_domain
(可选)

允许的 m 值的坐标范围。

String
template
[template,...]
(可选)

可用于定义 XY 值域的要素类或图层。

Feature Layer
expand_ratio
(可选)

展开 XY 值域时使用的百分比。

Double

派生输出

名称说明数据类型
out_spatial_reference

输出空间参考。

模型构建器 中,可使用空间参考参数(如创建要素类创建要素数据集创建 XY 事件图层)将此工具的输出用作工具的输入。

空间参考

代码示例

CreateSpatialReference 示例(独立脚本)

以下独立脚本将 CreateSpatialReference 函数用作工作流的一部分,该工作流在文件夹中进行循环、查找所有以 ST 结尾的 shapefile、创建空间参考,并将其追加到地理数据库要素类中。

# This script reprojects a shapefile in Redlands folder
# from NAD 1983 UTM Zone 11N
# to NAD 1983 StatePlane California V FIPS 0405 (US Feet)

# import system modules
import arcpy
 
try:
    # set the workspace environment
    arcpy.env.workspace = r"C:\data\Redlands"

    # create a spatial reference object to be used as output coordinate system
    out_sr = arcpy.CreateSpatialReference_management("NAD 1983 StatePlane California V FIPS 0405 (US Feet)")

    # use the output of CreateSpatialReference as input to Project tool
    # to reproject the shapefile
    arcpy.Project_management("citylimit_Project1.shp", "city_CA_FIPS0405", out_sr)

except arcpy.ExecuteError:
    # print geoprocessing message
    print(arcpy.GetMessages(2))
          
except Exception as ex:
    # print the exception message
    print(ex.args[0])

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题