描述
创建地址定位器。 地址定位器可用于查找某个地址的位置、对地址表进行地理编码或获取某个位置点的地址。
使用方法
可在任何指定的文件夹中创建地址定位器。
参考数据集的角色定义了其作为地址定位器的参考数据的角色。 ArcGIS 中的地址定位器样式使用以下值来描述参考数据集的角色:
- 主表 - 定义定位器的主参考数据集要素类(例如,街道中心线要素类)。 此表是必须的。
- 备用城市名称表 - 定义一个备用城市名称表,用来存储城市或地名的备用名称。 如果要包含一个可用于连接至主表的 JoinID,则需要此表。 此表为可选表。
- 备用名称表 - 定义一个备用街道名称表,用来存储街道或点要素的备用名称。 如果要包含一个可用于连接至主表的 JoinID,则需要此表。 此表为可选表。
- 别名表 - 定义一个地名别名表,用来存储地名以及名称对应的实际地址。 用户可以使用地名(如 Field Museum)或地址(如 1400 S Lakeshore Drive Chicago, IL 60605)来查找相应的位置。 此表为可选表。
自定义定位器样式或第三方提供的定位器样式可能会为参考数据要素类和表定义其他类型的角色。 有关这些定位器为参考数据集所定义的角色的信息,请参阅相应的文档。
不能使用此工具创建复合地址定位器。 要创建复合地址定位器,请使用创建复合地址定位器工具。
语法
arcpy.geocoding.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}],...] | 地址定位器要使用的参考数据要素类和表及其角色。
自定义定位器样式或第三方提供的定位器样式可能会为参考数据集定义其他角色集合。 | Value Table |
in_field_map | 地址定位器样式所使用的参考数据字段与参考数据集中各字段之间的映射。 此参数中的每个字段映射均采用如下格式:
其中,<locator field alias> 是地址定位器使用的参考数据字段的别名,<dataset field name> 是参考数据集中字段的名称。 名称旁带有星号 (*) 的字段是地址定位器样式必需的字段。 VISIBLE - 字段可见;NONE - 几何是原始值的副本。 如果不想将地址定位器样式所使用的可选参考数据字段映射到参考数据集中的字段,请使用“<None>”来代替字段名,以此指定不存在任何映射。 | Field Info |
out_address_locator | 要创建的地址定位器。 将定位器保存到文件夹中后,即可利用性能改进、多线程功能和建议支持。 创建定位器后,可以在定位器设置中修改其他属性和选项。 | Address Locator |
config_keyword (可选) | 配置关键字,用来确定关系数据库管理系统 (RDBMS) 中表的存储参数,仅适用于企业级地理数据库和文件地理数据库。 | String |
enable_suggestions (可选) | 支持针对客户端应用程序中的用户输入生成逐字符的自动完成建议。 此功能通过在获取建议的匹配前减少需要输入的字符数来改善交互式搜索体验。 该想法如下:客户端应用程序提供的建议列表可通过用户输入的各字符进行更新,直到在列表中返回要查找的位置。 仅可使用 Esri 提供的定位器样式按照启用的建议构建定位器。 仅当将此类定位器作为地理编码服务发布时才会显示建议功能。 启用建议的定位器只能保存在文件夹中,不能保存在地理数据库中。
| Boolean |
代码示例
CreateAddressLocator 示例(独立脚本)
以下 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 separate file folder.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/atlanta.gdb"
Atlanta_AddressLocator_OutputPath = "C:/ArcTutor/Geocoding/Atlanta"
arcpy.CreateAddressLocator_geocoding("US Address - Dual Ranges", "streets 'Primary Table'", "'Feature ID' OBJECTID VISIBLE NONE;'*From Left' L_F_ADD VISIBLE NONE;'*To Left' L_T_ADD VISIBLE NONE;'*From Right' R_F_ADD VISIBLE NONE;'*To Right' R_T_ADD VISIBLE NONE;'Prefix Direction' PREFIX VISIBLE NONE;'Prefix Type' PRE_TYPE VISIBLE NONE;'*Street Name' NAME VISIBLE NONE;'Suffix Type' TYPE VISIBLE NONE;'Suffix Direction' SUFFIX VISIBLE NONE;'Left City or Place' CITYL VISIBLE NONE;'Right City or Place' CITYR VISIBLE NONE;'Left ZIP Code' ZIPL VISIBLE NONE;'Right ZIP Code' ZIPR VISIBLE NONE;'Left State' STATE_ABBR VISIBLE NONE;'Right State' STATE_ABBR VISIBLE NONE", Atlanta_AddressLocator_OutputPath, "", "DISABLED")
环境
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是