地理数据集的空间参考由以下各部分组成:
- 包含地图投影和基准面的坐标系
- XY 分辨率、M 和 Z 分辨率和域(可选)
- XY 容差、M 和 Z 容差(可选)
这些空间参考属性对地理处理工具的性能和生成的结果具有重大影响。
- 地理处理工具创建输出数据时,必须为该新建数据集指定空间参考。
- 地理处理工具处理多个要素类中(如相交工具)或多个栅格中(如加权叠加工具)的要素时,必须将数据归入一个公共的空间参考才能计算出两个数据集内容之间的关系。
输出数据集的空间参考与进行处理的空间参考属于同一个空间参考。也就是说,该工具将始终在输出数据集的空间参考中处理数据。
什么是默认输出空间参考?
地理处理工具将根据以下逻辑来确定输出空间参考:
- 如果在某要素数据集中生成输出,则将使用该要素数据集的空间参考属性。
- 如果输出的是一个独立的地理数据集(不位于任何要素数据集中),则空间参考属性将与输入地理数据集的空间参考属性相同。
- 如果输入的是视图区的某图层,则将使用该图层数据源的空间参考。
- 如果输入的是一列数据集(例如,相交工具),则将使用第一个输入数据集的空间参考。
- 如果该工具不具备输入数据集(例如,创建要素类、创建要素数据集和创建栅格目录),则最好选择一个坐标系,这样地理处理工具才能计算出其他空间参考属性(例如 XY 分辨率和容差)。
如何覆盖默认空间参考的属性
下方列出的地理处理环境可用于覆盖以下默认的输出空间参考属性。如果在某要素数据集中生成输出,则坐标系以及XY 属性和 Z 属性(除了包含 Z 值)都将始终使用该要素数据集的对应属性。
- 坐标系
- XY 容差
- Z 容差
- XY 分辨率
- XY 域 - 对于 9.2 版以后的地理数据库的输出将忽略此值
- 输出包含 Z 值
- 默认输出 Z 值
- Z 分辨率
- Z 值域
无论输出位于独立数据集中还是位于某要素数据集中,下列环境参数均可用:
- 输出含有 M 值
- M 容差
- M 分辨率
- M 值域
处理多个输入的工具(坐标系将影响工具的性能)
处理多个输入的地理处理工具(例如分析工具箱或Spatial Analyst 工具箱)要求所有要素和栅格均位于一个公共的坐标系中以便计算空间关系。请考虑用于计算多个要素类几何交集的相交工具。假设五个要素类被指定为输入,第一个要素类输入使用 UTM 坐标系,而其余四个要素类则使用 Albers 坐标系。由于第一个要素类位于 UTM 坐标系中,因此在相交工具开始处理这些要素之前,其他四个要素类中的要素将先从Albers坐标系投影到 UTM 坐标系中。对这些数据集进行投影会严重降低性能;将一个要素类从 UTM 投影到Albers坐标系要比将四个要素类从Albers坐标系投影到 UTM 更便捷。相反,如果UTM 坐标系中要素类的要素数量多于其他四个要素类的要素总量,则将其他四个要素类从Albers坐标系投影到 UTM 会更有效率。
为了提高上述情况下的性能,您可以采用以下两种方法之一:
- 为对应的坐标系(如上例中的Albers坐标系)设置地理处理输出坐标系环境变量。如有必要,建议每次指定输出坐标系环境时都指定一个合适的地理(坐标)变换。
- 确保提供给该工具的第一个地理数据集输入中包含的坐标系可使需要投影的数据量最小(如上例中的Albers坐标系)。
避免使用未知坐标系
通过合适的坐标系处理数据,便可使用比较合适的容差、分辨率和域的默认值。
应当避免使用未知坐标系处理数据,因为默认容差可能不适合该工具。未知坐标系的 XY 容差默认值为 0.001 单位。如果数据的坐标位于某个 1 单位(十进制度)代表地球表面上 110 千米距离的地理坐标系中,则该默认容差便属于一个非常大的值,因为这就意味着用于处理数据的容差可达 110 米。
坐标系影响工具结果
同一个坐标系中的两个几何所共享的空间关系或拓扑关系可能会因投影到其他坐标系中而发生改变。例如,下图显示的是一条连接雅加达市和惠灵顿市的蓝线。连接这两个城市的蓝线是否与艾利斯斯普林斯市相交将取决于投影和处理数据的坐标系。因此,选择一个适合数据的坐标系非常重要。
在“模型构建器”中设置坐标系环境
可以为单独一个进程(一个进程表示某工具加上输入和输出数据)或整个模型设置输出坐标系环境。在进程级别设置环境仅会影响单个进程的执行。在模型级别设置环境将影响该模型中的所有进程。
在进程级别设置坐标系
- 在“模型构建器”中,右键单击某工具元素。
- 单击获取变量 > 从环境 > 输出坐标 > 输出坐标系。创建一个名为输出坐标系的新变量并将其连接到工具。
- 双击输出坐标系然后输入合适的坐标系,此坐标系通常应为输入到该工具中的最大地理数据集的坐标系。
在模型级别设置坐标系
在“模型构建器”中,单击模型 > 模型属性。或者在目录 或 ArcToolbox 窗口中右键单击该模型,然后单击属性。
- 单击环境选项卡。
- 展开输出坐标。
- 选中输出坐标系。
- 单击值按钮。
- 在环境设置 对话框中展开输出坐标设置。
- 在输出坐标系列表中选择如下面的指定。
- 单击浏览按钮浏览到某现有坐标系或者在下拉列表中选择模型变量。