创建地址定位器 (地理编码)
用法
-
可在与参考数据相同的工作空间中创建地址定位器,也可在所指定的地理数据库或文件夹中的其他工作空间中创建地址定位器。
-
参考数据集的角色定义其作为地址定位器的参考数据的角色。ArcGIS 中的地址定位器样式使用以下值来描述参考数据集的角色:
- 主表 - 定义定位器的主参考数据集要素类(例如,街道中心线要素类)。此表是必须有的表。
- 备用名称表 - 定义一个备用街道名称表,用来存储街道或点要素的备用名称。如果要包含一个可用于连接主表的 JoinID,则需要此表。此表为可选表。
- 别名表 - 定义一个地名别名表,用来存储地名以及名称对应的实际地址。用户可以使用地名(如 Field Museum)或地址(如 1400 S Lakeshore Drive Chicago, IL 60605)来查找相应的位置。此表为可选表。
-
自定义定位器样式或第三方提供的定位器样式可能会为参考数据要素类和表定义其他类型的角色。有关这些定位器为参考数据集所定义的角色的信息,请参阅相应的文档。
-
不能使用此工具创建复合地址定位器。要创建复合地址定位器,请使用创建复合地址定位器工具。
语法
参数 | 说明 | 数据类型 |
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 # This shows as an example: reference_data_field_map = "'Feature ID' FeatureID 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" 其中,<locator field alias> 是地址定位器使用的参考数据字段的别名,<dataset field name> 是参考数据集中字段的名称。名称旁带有星号(“*”)的字段是地址定位器样式的必填字段。 VISIBLE - 字段可见;NONE - 几何是原始值的副本。 如果不想将地址定位器样式所使用的可选参考数据字段映射到参考数据集中的字段,请使用“<None>”来代替字段名,以此指定不存在任何映射。 要确定定位器样式所使用的参考数据字段的别名,请打开创建地址定位器 工具并选择相应的定位器样式。“字段映射”控件的“字段名”列中的名称就是字段的别名。 | Field Info |
out_address_locator |
要创建的地址定位器。 | Address Locator |
config_keyword (可选) |
配置关键字,用来确定关系数据库管理系统 (RDBMS) 中表的存储参数,仅适用于 ArcSDE 和文件地理数据库。 | String |
代码示例
以下 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 the same file geodatabase. # Import system modules import arcpy from arcpy import env env.workspace = "C:/ArcTutor/Geocoding/atlanta.gdb" arcpy.CreateAddressLocator_geocoding("US Address - Dual Ranges", "streets Primary", "'Feature ID' FeatureID 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 Zipcode' ZIPL VISIBLE NONE;'Right Zipcode' ZIPR VISIBLE NONE;'Left State' State_Abbr VISIBLE NONE;'Right State' State_Abbr VISIBLE NONE", Atlanta_AddressLocator, "")