练习 5:使用备用街道名称和地名别名
创建地址定位器时,可以选择使用备用名称和地名别名。地名别名可用于将熟知地名(例如,博物馆、医院或地标的名称)与街道地址关联。对地址进行地理编码时,首先会参阅地名别名表。找到某一地名后,对地名别名表中的街道地址进行地理编码。同样,可以为参考数据中的要素(如街道)定义备用名称。对地址进行地理编码时,也会搜索备用名称表以查找可能包含具有多个名称的街道的候选项。
创建使用备用名称和地名别名的地址定位器
在本任务中,将创建一个使用备用街道名称和地名别名的新地址定位器,然后在 ArcMap 中用它来查找地址。
步骤:
- 在 ArcCatalog 中,导航至 Atlanta 地理数据库。
- 右键单击内容选项卡的空白区域,然后单击新建 > 地址定位器。
将出现创建地址定位器对话框。
-
在创建地址定位器 对话框中,单击地址定位器样式文本框旁的浏览按钮 。
将出现选择地址定位器样式 对话框。
- 选择美国地址 - 双范围地址样式。
- 单击确定。
- 单击参考数据文本框旁的浏览按钮 打开参考数据 对话框。
- 浏览至 Atlanta 文件地理数据库,选择 streets 要素类,然后单击添加。
-
在创建地址定位器 对话框中,单击角色列标题下的箭头,然后选择主表。
- 重复步骤 6 和 7,但这次浏览至 Atlanta 地理数据库中的 altname 表并将其添加。
- 单击 altname 表角色列标题下的箭头,然后选择备用名称表。
- 字段映射部分应该会自动完成。如果没有,请在各字段的参考数据中选择适当的字段。“主表”和“备用名称表”的 JoinID 字段必须正确映射;如果未正确映射,请执行以下子步骤:
- 针对 Primary Table:Altname JoinID 字段单击别名列标题下的箭头,然后选择 streets:JOINID。
- 针对 Alternate Name Table:JoinID 字段单击箭头,然后选择 altname:JOINID。
altname 表中的 JOINID 字段和 streets 要素类中的 JOINID 字段用于将 altname 表中的记录关联到 streets 要素类中的记录。
- 重复步骤 6 和 7,但这次浏览至 Atlanta 地理数据库中的 place_aliases 表并将其添加。
- 单击 place_aliases 表角色列标题下的箭头,然后选择别名表。
- place_aliases 表的字段映射应该会自动完成。如果没有,请在各地址定位器字段的参考数据中选择合适的字段。针对名为 Alias Table:Alias 的字段,单击别名列标题下的箭头,然后选择 place_aliases:NAME。所选字段包含可用于地理编码的地名。
-
单击输出地址定位器文本框旁的浏览按钮 。
将出现输出地址定位器 对话框。
- 导航至 Atlanta 地理数据库文件夹,输入 Atlanta_AltName 作为地址定位器名称,然后单击保存接受更改并关闭对话框。
-
单击确定启动地址定位器创建过程。
该过程结束后,新的 Atlanta_AltName 地址定位器将出现在 Atlanta 文件地理数据库中。
- 关闭 ArcCatalog。
接下来,将设置输出地址定位器的路径。
现在即可使用该地址定位器查找某一地址位于地图上的什么位置。
使用备用街道名称和地名别名查找位置
在本任务中,将使用刚刚创建的 Atlanta_AltName 定位器查找地址。
步骤:
- 在 ArcMap 中打开一个新的地图文档。
- 将 Atlanta 地理数据库中的 streets 要素类添加到地图中。
- 单击基础工具 工具条上的查找按钮 。
- 在查找 对话框中,单击位置选项卡。
- 单击选择地址定位器下拉框旁的浏览按钮 。
将打开添加定位器 对话框。
- 浏览至 Atlanta 文件地理数据库,选择 Atlanta_AltName 定位器,然后单击添加。
-
在完整地址文本框中输入 30 Old 10th St NE,然后单击查找以搜索候选项。
- 在候选列表中右键单击候选项,然后单击添加点。
地图上将显示一个表示地址位置的图形点。
- 在完整地址文本框中输入 30 Atlanta Blvd,然后单击查找以搜索候选项。
- 右键单击找到的候选项,然后单击闪烁。
可以看到这两个地址都匹配到地图上的同一位置。
- 在完整地址文本框中输入 Atlanta Market,然后单击查找以搜索候选项。
- 右键单击找到的候选项,然后单击添加点。
医院的位置将显示在地图上,就像输入了其完整地址一样。
- 单击取消关闭查找 对话框。
街道可能具有多个名称。例如,Atlanta Blvd 是 Atlanta 数据库中 Old 10th St NE 的备用名称。使用 Atlanta_AltName 地址定位器查找 30 Old 10th St NE 和 30 Atlanta Blvd 时,将找到同一位置。
除了对地址进行地理编码以外,还可以对 place_aliases 表中已定义的地名进行地理编码。
对于知道地标名称但不知道其具体地址的用户而言,使用备用名称和地名别名创建定位器非常有用。它还能够为街道或要素具有多个名称的场合提供帮助。
7/10/2012