地理编码过程将地点或地址的文本表达转换为其位置的地图制图表达。您可以通过地理编码在地图中查找及显示地址,还可以查看该地址与周围要素的关系。有时,通过查看地图便可发现相互间的空间关系;此外,也可使用空间分析工具来获取那些难以发现的信息。地理编码工作由称为定位器的服务完成。
定位器可帮助用户查找地址、感兴趣地点、宗地和其他资产。在 ArcGIS Enterprise 中,定位器由地理编码服务提供支持。地理编码服务支持多种应用程序,从业务和客户管理到运输和配送,再到方向和导航,都可以通过地理编码服务得到支持。定位器能够有效地对感兴趣区域中的位置进行地理编码,无论是来自单个查询(例如移动应用程序中的地址栏)还是批量查询(例如当表文件被地理编码到要素类中)。
有多种商用定位器和地理编码服务可供选择,例如 ArcGIS Online World Geocoding Service。但是这些定位器可能无法满足您组织的特定需求,并且在使用组织收集和管理的资产和地址创建定位器时,无法提供您所需的灵活性。
通过投入充足的时间构建满足您特定需求的定位器,可确保您的各项需求都得到很好地满足。例如,当地公共事业机构可以使用其在市内的智能电表集合来构建定位器,并对每个电表进行地理编码以规划其电表读取器的路线。
您可以在 ArcMap 或 ArcGIS Pro 中创建自己的定位器。
如果您正在使用 ArcGIS Pro,可将完成的定位器共享到 ArcGIS Enterprise 门户,然后可通过该门户将地理编码服务发布至其联合的 ArcGIS Server 站点。此外,您可以将地理编码服务发布到 ArcGIS Pro 2.4 之后的独立 ArcGIS Server 站点。
如果您使用的是 ArcMap,则仅能将完成的定位器作为地理编码服务共享到 ArcGIS Server。
只要您的 ArcGIS Enterprise 部署中存在定位器或地理编码服务,就可以在客户端应用程序中进行使用,例如,Map Viewer 和 Web AppBuilder for ArcGIS。
创建定位器
定位器是 ArcGIS 中进行地理编码的主要工具。其包含将地址和其他文本字符串转换为地图位置所需的所有数据和设置。要构建自己的定位器,需执行以下步骤:
- 定义定位器的用途,以及要进行地理编码的条目的格式和分辨率。您的定位器用户是只会输入城市名称和邮政编码其中的一项,还是会提供完整的邮政地址? 他们是想要定位某一特定的建筑物、某个街区还是某个区域的质心? 两个用户可能在同一位置有不同的名称或地址吗?
- 提供参考数据 此数据必须覆盖定位器感兴趣的区域并具有适当的分辨率,这样定位器对于您定义的目的非常有用。您可能有多组参考数据 - 一组主要地址和多组有关这些位置的潜在别名。
- 对齐参考数据中的字段,以便定位器识别哪些字段引用邮政编码,哪些字段引用门牌号,以此类推。该过程称为字段映射;在某些情况下,此过程可以由软件自动完成。
- 以 .loc 格式创建和保存定位器,并准备将其发布或共享到 web。
此一般过程对在 ArcGIS Pro 和 ArcMap 中创建的定位器均适用,但这两个应用程序的具体步骤是不同的。与在 ArcMap 中创建的定位器相比,在 ArcGIS Pro 中创建的定位器具备更多的功能,且性能更佳。
有关分步说明,请参阅您正在使用的桌面应用程序的文档部分:
在 ArcGIS Pro 中创建定位器。
在 ArcMap 中创建地址定位器。
旧版本:
定位器应存储于文件夹中,这样您就可以利用地理数据库中存储的不支持定位器的新的要素,例如性能改善、多线程功能和建议支持。ArcGIS 10.4 是支持地理数据库中存储定位器的最后一个版本。
复合定位器
复合定位器将多个定位器组合成一个定位器,允许定位器解析多个可能的定义以实现最佳匹配。这样可以增加定位器找到搜索项正确位置的可能性。例如,您可以将不同分辨率的定位器组合到复合定位器中,如果初始参考数据集中无任何匹配项,则允许它扩展其搜索比例。
在发布或共享复合定位器时,必须指定要复制其所有数据,而不是注册数据源。如果参与定位器存储在一个已注册到服务器中的文件夹中,则只会将复合定位器(而不是参与定位器)复制到服务器上。
您可以在 ArcGIS Pro 或 ArcMap 中创建复合定位器。有关复合定位器的详细信息,请参阅您正在使用的桌面应用程序文档:
在 ArcGIS Pro 中将多个定位器组合为复合定位器的基础知识。
在 ArcMap 中创建复合地址定位器。
共享定位器
定位器创建完成后,可将其与 ArcGIS Enterprise 共享。有多种方法可以执行此操作,具体取决于您使用的桌面应用程序以及定位器的使用方式。
要共享 ArcGIS Pro 中的定位器,主要有以下三种选择:
- 您可以将 ArcGIS Pro 中的定位器作为托管服务共享到 ArcGIS Enterprise 门户。共享托管服务后,用户便可以从门户访问定位器。这需要一个与此门户联合的 ArcGIS GIS Server 站点。
- 自 ArcGIS Pro 2.4 版本起,您可以将定位器作为地理编码服务直接发布到 10.6 及更高版本的 ArcGIS Server 站点。此操作无需服务器与门户联合。
- 您还可以通过 ArcGIS Pro 将定位器以定位器包 (.gcpk) 或移动地图包 (.mmpk) 形式进行共享,以在断开连接的环境下使用。
在 ArcMap 中,您可将定位器共享为地理编码服务,这样 web 用户可以始终使用该定位器,也可以将此定位器共享为 .gcpk 格式的定位器包,可将其发送给用户,并保存在各自的地图中。在与断开连接环境中的用户共享定位器时,定位器包非常有用。
地理编码服务操作
地理编码服务具有内置操作,可用于执行地理编码和反向地理编码以及生成建议。地理编码是指根据地址查找地理位置的过程;而反向地理编码是指查找最靠近某一地理位置的地址的过程;建议是针对部分输入字符串生成的自动完成地址。共享定位器时,默认启用地理编码和反向地理编码操作。默认情况下,建议操作处于启用状态,仅当针对源地址定位器启用建议时才可用。可通过访问 ArcGIS Server Manager 中的服务编辑器的功能选项卡来启用或禁用这些操作中的任何一项。
使用地理编码服务
要将定位器用作地理编码服务,需要客户端应用程序(如 web 应用程序或门户的 Map Viewer)来调用该服务。ArcGIS API for JavaScript 和 ArcGIS Runtime SDK 可构建能够使用地理编码服务的自定义应用程序。
要使门户使用自定义定位器作为其默认定位器,您可以将其指定为门户的地理编码服务。
形式基本的地理编码服务是 Web 服务,它接收地址,然后返回对应的位置坐标。如果是通过 ArcGIS Server 服务目录导航到地理编码服务,则可查看该服务的 REST URL。该 URL 链接的格式如下:
http://gisserver.domain.com:6443/arcgis/rest/services/folder/MyGeocodeService