地理处理围绕数据类型的概念进行构建。每个工具参数都有一个用于定义变量内容的相关数据类型。一些简单的数据类型包括字符串(任意一组字母数字字符)、布尔型(true/false 值)和长整型(介于 -2147483648 和 2147483647 之间的整数值)。除了这些简单的数据类型之外,还有很多专门针对 ArcGIS 中存在的数据(例如字段、坐标系和范围)而构建的其他数据类型。
各种数据类型的文档位于 Geoprocessing_data_types.pdf 中。如果此链接无效,可以从 ArcGIS for Desktop 安装位置的 \arcgis\Documentation 文件夹中打开该文档 (Geoprocessing_data_types.pdf)。
要查看此文档,需要安装 Adobe Reader,这可从 http://www.adobe.com/products/acrobat/readstep.html 上免费下载。
数据类型的使用场合
临时地理处理用户无需了解数据类型。但是,有些情况下系统会要求您提供变量和参数的数据类型。
在模型构建器中,大多数情况下都是根据现有工具参数创建变量。由于所有参数都具有相关数据类型,因此将自动使用正确的数据类型创建变量。
确定参数的数据类型
可通过以下几种方法确定参数的数据类型:
- 在工具的参考页面中,语法区域包含一个用于描述每个参数及其数据类型的表。
- 在模型构建器中,根据工具的参数创建变量。右键单击变量,单击属性,然后单击数据类型选项卡。将在对话框的顶部列出数据类型。
- 在模型构建器中,创建模型报告。该报告列出了所有参数的所有数据类型。
字符串语法
每种数据类型都有在工具对话框和脚本中使用的字符串语法。大多数数据类型的字符串语法十分简单,例如数据集路径名称、数字或关键字。例如,字段数据类型即为字段的名称。其他数据类型的语法则更为复杂。
数据类型的字符串语法可从上述 PDF 文件找到。如果不清楚某种数据类型的特殊字符串语法,可尝试执行以下操作:
- 查找使用该数据类型的工具。
- 使用工具的对话框执行工具。
- 在结果 窗口中,右键单击结果,然后单击复制为 Python 代码片段。随后即可将此代码片段粘贴到任意文本编辑器(或 Python 窗口)中,检查所有参数的字符串值。
数据类型和脚本对象
一些数据类型的字符串语法过于复杂,无法在脚本中进行使用。例如,以下是定义埃克特 IV 坐标系的空间参考数据类型对应的文本字符串:
PROJCS['World_Eckert_IV',
GEOGCS['GCS_WGS_1984',
DATUM['D_WGS_1984',
SPHEROID['WGS_1984',6378137.0,298.257223563]],
PRIMEM['Greenwich',0.0],
UNIT['Degree',0.0174532925199433]],
PROJECTION['Eckert_IV'],
PARAMETER['False_Easting',0.0],
PARAMETER['False_Northing',0.0],
PARAMETER['Central_Meridian',0.0],
UNIT['Meter',1.0]]
对于具有复杂字符串的数据类型,arcpy 包含的具有方法和属性的类可用于轻松创建和修改这类数据类型。例如,请参阅 SpatialReference 类。