地理处理服务示例:裁剪与发送
文件夹 |
ClipAndShip |
权限用途 |
借助一个由用户数字化的面要素,该服务可裁剪面要素所对应的研究区内的图层并存储到文件地理数据库中,然后创建一个用户可下载的 .zip 文件。 |
服务 |
Zion(地图服务)、ExtractZionData(地理处理服务) |
地理处理任务 |
ExtractZionData |
输入 |
要裁剪的图层、感兴趣区、要素格式、栅格格式 |
输出 |
一个包含数据的 ZIP 文件。 |
数据 |
本示例使用犹他州锡安国家公园研究区域的若干数据集。 |
扩展名 |
无 |
注释 |
创建一个压缩文件 output.zip,其中包含具有指定格式的文件。该文件模拟了发布为地理处理服务的 ArcMap 文档中的图层的排列情况。 |
对应的文件夹
本示例的数据可从 ArcGIS.com 下载。下载后,提取 zip 文件至 C:\arcgis\ArcTutor\。GP Service Examples\ClipAndShip 文件夹包含了完成的模型和数据。
关于本示例
本示例显示了共享和使用地图及地理处理服务的详细步骤。服务中所使用的模型 ExtractZionData 来自提取数据任务模型工具。通过地理处理任务,客户端可以选择要返回的图层、对定义感兴趣区的一个面(或多个面)进行数字化,以及选择输出要素和栅格数据格式。根据感兴趣区域裁剪地图中的数据,然后将其打包为 ZIP 文件并准备发送给客户端。
数据
此示例的研究区域是锡安国家公园。数据包括了研究区、边界、区域、道路、小径、泉水、河流和研究区的山体阴影栅格。此数据存放在 C:\arcgis\ArcTutor\GP Service Examples\ClipAndShip\ToolData\Zion.gdb 中。
为发布创建服务器管理连接
请确保您有发布到服务器的权限。如果有,请按照以下步骤创建、发布或管理与服务器的连接:
- 转到 GIS 服务器 > 添加 ArcGIS for Server 可弹出 ArcGIS for Server 对话框。
- 选中发布 GIS 服务或管理 GIS 服务器。
- 在常规面板上,输入服务器管理 URL并提供对应的用户名和密码。
- 单击完成完成连接。
共享地图服务
按照以下步骤创建一项地图服务,服务的用户可将其作为参考地图使用:
- 从目录 窗口,导航至 C:\arcgis\ArcTutor\GP Service Examples。将 C:\arcgis\ArcTutor\GP Service Examples 下的 ClipAndShip 文件夹复制到一个本地目录中。
- 从保存了 ClipAndShip 文件夹的本地目录中打开 Zion.mxd。
- 从ArcMap 菜单栏中选择文件 > 共享为 > 服务。将打开共享为服务 向导。
- 在共享为服务 向导的第一个面板中,选择发布服务,然后单击下一步。
- 在选择一个连接下拉列表中,选择您之前连接的服务器名称。默认服务名称是 Zion(地图文档名)。您可以接受默认名称或输入新名称。
- 在下一个面板中,给出您的服务文件夹或接受默认的 [根] 并单击继续。服务编辑器随即打开。
- 在服务编辑器 中,单击功能选项卡。默认选中映射和 KML。此服务不需要 KML 功能,所以取消选中 KML 复选框。
- 在服务编辑器 中单击项目描述选项卡,输入所要求的摘要和标签。
- 单击服务编辑器 右上角的分析 按钮。将打开准备 窗口。
- 如果您在准备 窗口中看见任何警告或错误消息,右键单击具有错误或警告消息的行,然后单击突出显示的消息,进行修复。
- 消除了所有错误之后,单击服务编辑器 右上角的发布 按钮。发布完成后会得到一条成功的消息。
Zion 地图服务发布完成,可供后续使用。
共享地理处理服务
- 从保存了 ClipAndShip 文件夹的本地目录中打开 ClipAndShip.mxd。
- 在目录 窗口中,单击转至默认工作目录文件夹 按钮。展开 ExtractZion.tbx 并双击模型工具 ExtractZionData 以打开其对话框。
- 对于要裁剪的图层参数,设置在服务中您希望显示给用户的图层。
- 对于感兴趣区参数,单击上图所示的 Area_of_Interest 符号并数字化地图上的一个面。
- 您可接受所有其他参数的默认值。
- 单击确定以运行工具。
工具执行完毕后,一个新结果会写入结果 窗口中。要打开结果 窗口,选择 ArcMap 主菜单中的地理处理 > 结果。
- 查看结果 窗中的结果,检查工具执行是否成功。如果执行失败,则会在结果旁边显示一个错误图标 。
- 在结果 窗口中,右键单击 ExtractZionData 结果并选择共享为 > 地理处理服务。将打开共享为服务 向导。
- 选择之前连接的服务器,发布到与之前创建地图服务相同的文件夹。服务的默认名称和工具名称完全相同,即 ExtractZionData。您可以接受默认服务名称或输入新名称。
- 在共享为服务 向导的最后一个面板上,单击继续以打开服务编辑器。
使用
以下步骤显示了如何使用之前发布的地图和地理处理服务。
- 打开新的 ArcMap 文档。
- 在目录 窗口中,
- 导航至 GIS 服务器下的服务器连接,选择地图服务 Zion,然后将其拖动到 ArcMap 的内容列表中。
- 在内容列表中展开 Zion 地图服务,将会看到属于 Zion 地图服务的所有图层。
- 在目录 窗口中,导航至 GIS 服务器下的服务器连接,查找在前一部分发布的地理处理服务,然后将其展开。将出现任务 ExtractZionData。
- 双击任务 ExtractZionData 以打开任务对话框。
- 在 ExtractZionData 对话框中即是下图所示的要裁剪的图层参数。请注意,复选框内的图层名称和内容列表中 Zion 地图服务的图层名称相同。选中要包含在下载中的每个图层旁边的复选框。
- 感兴趣区参数是用来数字化感兴趣区域的,对要裁剪的图层参数选定的每个图层进行裁剪都将用到该区域。单击 Area_of_Interest 符号并数字化地图上的一个面。
- 可对其他输入参数要素格式和栅格格式进行修改或保留默认设置。
- 单击确定以运行地理处理任务。
输出将从服务器返回并写入在地理处理临时工作空间环境中设置的位置。
任务完成后,打开结果 窗口以查看任务结果。双击 output.zip 打开压缩文件,然后将数据提取至所选的位置。
自定义地理处理服务源模型
前面的示例使用了服务器工具箱内的模型工具提取数据任务。此模型仅对提取数据工具设置参数。如果将该模型工具复制到新的自定义工具箱,那么就可以在模型构建器中打开并进行编辑。提取数据任务模型包含输入变量空间参考和自定义空间参考文件夹,这两个变量不显示为模型参数。空间参考的默认值是与输入相同,意思是输出文件的空间参考和输入图层相同。如果要让输出文件的空间参考和输入文件的空间参考不同,可以将空间参考设置为输入参数,以便打开模型工具对话框时,可指定不同的空间参考。变量自定义空间参考文件夹是一个可选参数;通过该参数,可以指定包含自定义和/或标准空间参考的文件路径。
除了这两个空间参考变量外,同样也可修改要素格式参数以包含所需要的附加格式。
以下步骤显示了如何通过将变量空间参考显示为参数、添加自定义空间参考文件夹的路径并添加要素格式参数的新输出格式来自定义提取数据任务模型。
CustomSPRef.tbx 是一个包含自定义 ExtractZionSPRef 模型的工具箱,位置在C:\arcgis\ArcTutor\GP Service Examples\ClipAndShip。执行以下步骤后,该工具箱和模型将成为最终产品。
- 第一步是创建新的工具箱和模型。在目录 中,将 C:\arcgis\ArcTutor\GP Service Examples 下的文件夹 ClipAndShip 复制到一个本地目录中。
- 从数据和模型被复制到的本地目录中,打开 ClipAndShip.mxd。
- 在目录 窗口中,单击转至默认工作目录文件夹 按钮。删除工具箱 CustomSPRef.tbx 和文件夹 SpatialReference。
- 右键单击主目录文件夹,然后选择新建 > 工具箱。
- 将工具箱重命名为 CustomSPRef。
- 在目录 窗口中,
- 展开工具箱 > 系统工具箱 > Server Tools.tbx > 数据提取。
- 右键单击提取数据任务并选择复制。
- 右键单击上述创建的 CustomSPRef.tbx 并选择粘贴。
模型提取数据任务将被复制到工具箱。
- 右键单击复制的模型,选择重命名,然后将模型重命名为 ExtractZionSPRef。
- 右键单击 ExtractZionSPRef,然后选择编辑以在模型构建器中打开模型。在模型中,右键单击变量空间参考,然后选择模型参数。字母 P 将显示在变量的右上角,说明该变量是模型参数。
- 创建一个自定义的空间参考文件夹和一个投影文件。将投影文件保存到文件夹中。
- 在目录 窗口中,右键单击主目录文件夹。右键单击文件夹并选择新建 > 文件夹,就可创建一个新的文件夹。
- 将新建文件夹重命名为 SpatialReference。
- 从主目录文件夹,导航至 ToolData/Zion.gdb。右键单击地理数据库中的任一要素类并选择属性以打开属性对话框。单击 XY 坐标系选项卡。
- 展开投影坐标系/State Plane/NAD 1983 (US Feet)。向下滚动列表直至找到 NAD 1983 StatePlane Utah South FIPS 4303 (US Feet)。
- 右键单击 NAD 1983 StatePlane Utah South FIPS 4303 (US Feet) 并选择另存为。
- 将投影文件保存在上面 b 步骤中创建的新文件夹 SpatialReference 中。以默认名称保存文件,默认名称为 NAD 1983 StatePlane Utah South FIPS 4303 (US Feet).prj。
- 从主目录文件夹,展开 CustomSPRef.tbx,右键单击模型 ExtractZionSPRef,选择编辑。双击变量自定义空间参考文件夹,输入您在上述步骤中创建的新 SpatialReference 文件夹的路径,然后单击确定。模型的显示会类似于上图所示。
- ExtractZionSPRef 模型在模型构建器中仍处于打开状态时
- 转到模型菜单 > 属性 > 参数选项卡。
参数空间参考将显示在参数列表的底部。
- 将对这些参数进行重新排序,以使输出 Zip 参数是最后一个参数。选择输出 Zip,然后单击下移 按钮将其移动到列表底部。
- 转到模型菜单 > 属性 > 参数选项卡。
- 仍然在参数选项卡中
- 选择变量空间参考,然后将过滤器的值更改为值列表。
- 将值与输入相同和 NAD 1983 StatePlane Utah South FIPS 4303 (US Feet) 输入到值列表。确保您输入的这些值和写入的相同。NAD 1983 StatePlane Utah South FIPS 4303 (US Feet) 由工具用来查找之前保存的 .prj 文件。
- 单击确定关闭值列表对话框。
- 单击确定关闭模型属性对话框。
- 保存模型,退出模型构建器。
- 保存自定义模型。
- 在桌面上运行自定义模型。运行模型时,从空间参考参数下拉菜单中选择 NAD 1983 StatePlane Utah South FIPS 4303 (US Feet)。
- 请参阅上面的发布和使用部分的说明发布自定义模型并用作地理处理服务。