构造 web 工具时,数据的输出渲染和坐标系是非常重要的细节。 您的工具已成功运行且已创建输出,以及您作为工具创作者的作业已完成。 或许是? 要构造在 web 上使用的高性能工具,需要花费时间来了解和确保您的工具具有明确定义的良好符号系统,且正确的坐标系可以是工具用户获得良好体验与极好体验的区别。
输出符号系统
提供地理输出的 web 工具可以通过以下两种方式之一来绘制结果:
- 将结果要素发送到客户端,由客户端对其进行绘制。
- 将地图服务的地图图像发送到客户端,该地图服务已在服务器上绘制图像。
注:
使用 web 工具的客户端无法要求结果为地图图像,除非已按照此方式对服务进行了设置。 服务的发布者或管理员必须在使用 web 工具之前启用此设置。
客户端绘制输出
默认情况下,web 工具可将成功执行工具所得输出要素返回到客户端。 由该客户端在地图上绘制或渲染这些要素。 在 Javascript API 中,代码必须获取结果,设置渲染器,并最终按照 Web 应用程序创建者所定义的那样绘制结果。 借助桌面应用程序,它们将利用 web 工具来获取和绘制要素。 客户端可以按照与符号系统的交互方式对其进行更改。
服务器返回地图图像
创建 web 工具时,可以选择将输出作为地图图像来查看(如果服务设置为异步执行)。 服务的输出要素将被绘制为地图图像,并将该图像返回到客户端。 在这种情况下,通常不返回要素(服务发布者可能已设置为不返回任何要素)。 在服务器上创建结果并返回地图图像对于以下各种情况非常有用:
- 将大数据(大栅格)或者大量要素发送回客户端不可行时。
- 无法在客户端绘制输出要素时。 例如,无法在 web 应用程序中绘制栅格 (.tif)。
- 客户端无法以高制图质量进行绘制或渲染时。 地图图像将保留在发布输出结果时输出结果的符号系统设置。
坐标系
web 工具处理的每个数据集都必须有一个坐标系。 通常,工具处理的所有数据将位于同一坐标系中,而无需进一步考虑在 web 工具中提供特定坐标系。 但是,存在需要注意和修改数据的情况。
Web 应用程序几乎仅使用 Web 墨卡托坐标系 (WKID: 102100)。 构造 web 工具时,如果该工具将输出要在 web 应用程序上绘制的要素,您可能需要或者不需要在 Web 墨卡托中生成数据。 如果目标是仅在地图中显示结果,则使用 Web 墨卡托可能是最佳做法,因为 Web 墨卡托可以减少不必要的变换。 如果目标是确定精确面积或长度测量的优先级,则适用于研究区域的本地坐标系为首选。 地理处理工具基于输入坐标系来处理和输出数据,除非已定义特定工具的输出坐标系。 构造 web 工具之前,在决定是重新投影数据还是保持数据不变时请注意以上几点。
web 工具的地理处理服务可以选择接受输出坐标系值。 在服务器上执行工具时,客户端应用程序可告知服务以特定坐标系返回输出。 如前所述,将基于输入坐标系完成处理,因此,输出将位于该坐标系中。 此设置允许继续在给定坐标系中进行处理,但是,服务器将根据需要对数据进行投影,然后以所选坐标系返回最终输出。 请参阅 context 参数,了解如何在同步地理处理服务的 REST 接口中将输出空间参考设置为 outSR;另请参阅 context 参数,了解如何在异步地理处理服务中进行设置。