描述
创建地址定位器。地址定位器可用于查找某个地址的位置、对地址表进行地理编码或获取某个位置点的地址。
警告:
ArcGIS Pro 2.6 是将支持创建地址定位器工具的最后一个版本。在继 ArcGIS Pro 2.6 后的下一主要版本将不再支持使用此工具构建定位器。建议您通过使用创建定位器工具构建定位器来应对这一变化。
使用方法
可在指定的文件夹中创建地址定位器。ArcGIS Pro 要求定位器存储于文件夹中,而不是地理数据库中。
参考数据集的角色定义了其作为地址定位器的参考数据的角色。ArcGIS Pro 提供的定位器样式使用以下值来描述参考数据集的角色:
- 主表 - 定义定位器的主参考数据集要素类(例如,街道中心线要素类)。此表是必须的。
- 备用城市名称表 - 定义一个备用城市名称表,用来存储城市或地名的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
- 备用名称表 - 定义一个备用街道名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接至主表的 JoinID,则需要此表。此表为可选表。
- 别名表 - 定义一个地名别名表,用来存储地名以及名称对应的实际地址。用户可以使用地名(如 Field Museum)或地址(如 1400 S Lakeshore Drive Chicago, IL 60605)来查找相应的位置。此表为可选表。
表示为服务的要素类和表作为数据类型,不支持用作参考数据。
自定义定位器样式或第三方提供的定位器样式可能会为参考数据要素类和表定义其他类型的角色。有关这些定位器为参考数据集所定义的角色的信息,请参阅相应的文档。
不能使用此工具创建复合定位器。要创建复合定位器,请使用创建复合地址定位器工具。
语法
CreateAddressLocator(in_address_locator_style, in_reference_data, in_field_map, out_address_locator, {config_keyword}, {enable_suggestions})
参数 | 说明 | 数据类型 |
in_address_locator_style | 构建新的地址定位器时所依据的地址定位器样式。
| Address Locator Style |
in_reference_data [[reference_data, {role}],...] | 地址定位器要使用的参考数据要素类和表及其角色。
表示为服务的要素类和表作为数据类型,不支持用作参考数据。 自定义定位器样式或第三方提供的定位器样式可能会为参考数据集定义一组其他的角色。 注:如果使用包含数百万个要素的参考数据创建地址定位器,则包含临时目录的驱动上的可用磁盘空间必须至少为数据大小的 3 到 4 倍,原因是在将定位器复制到输出位置之前,需将用于构建定位器的文件写入此位置。如果没有足够的磁盘空间,则一旦空间不足,工具将失败。此外,在创建大型定位器时,计算机必须具备足够的 RAM,才能处理占用较大内存的进程。 | Value Table |
in_field_map | 地址定位器样式所使用的参考数据字段与参考数据集中各字段之间的映射。此参数中的每个字段映射均采用如下格式:
其中,<locator field alias> 是地址定位器使用的参考数据字段的别名,<dataset field name> 是参考数据集中字段的名称。名称旁带有星号 (*) 的字段是地址定位器样式必需的字段。 如果不想将地址定位器样式所使用的可选参考数据字段映射到参考数据集中的字段,请使用 <None> 来代替字段名,以此指定不存在任何映射。 要确定定位器样式所使用的参考数据字段的别名,请打开创建地址定位器工具并选择相应的定位器样式。字段映射参数的字段名称列中的名称就是字段的别名。 | Field Info |
out_address_locator | 要在文件夹中创建的定位器。将定位器保存到文件夹中后,即可利用性能改进、多线程功能和建议支持。创建定位器后,可以在定位器设置中修改其他属性和选项。 | Address Locator |
config_keyword (可选) | 此参数在 ArcGIS Pro 中不起作用。保留它是为了支持向后兼容。 | String |
enable_suggestions (可选) | 指定是否针对客户端应用程序中的用户输入生成逐字符的自动完成建议。此功能通过在获取建议的匹配前减少必须输入的字符数来改善交互式搜索体验。该想法是这样的:客户端应用程序提供的建议列表可通过用户输入的各字符进行更新,直到在列表中返回要查找的位置。 仅可使用 Esri 提供的定位器样式按照启用的建议构建定位器。仅当将此类定位器共享至您的门户时才会显示建议功能。
| Boolean |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 CreateAddressLocator 函数。
# Create a street address locator using a street centerline feature class
# in a file geodatabase as reference data.
# The new address locator will be created in a file folder.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/atlanta"
arcpy.CreateAddressLocator_geocoding("US Address - Dual Ranges", "streets.shp 'Primary table'", "'Feature ID' FID;'*From Left' L_F_ADD;'*To Left' L_T_ADD;'*From Right' R_F_ADD;'*To Right' R_T_ADD;'Prefix Direction' PREFIX;'Prefix Type' PRE_TYPE;'*Street Name' NAME;'Suffix Type' TYPE;'Suffix Direction' SUFFIX;'Left City or Place' CITYL;'Right City or Place' CITYR;'Left ZIP Code' ZIPL;'Right ZIP Code' ZIPR;'Left State' State_Abbr;'Right State' State_Abbr", "Atlanta_AddressLocator", "", "DISABLED")
环境
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是