GP 服务逐步指南:缓冲点

复杂性:入门级 数据要求:ArcGIS 教程数据安装程序

文件夹

BufferPoints

目的

在点周围创建面。

服务

BufferService(地理处理服务)。

地理处理任务

Buffer Points

输入

用户需要对点进行数字化。

输出

数据

扩展模块

注释

在所有示例中,本示例属于最基本的服务。

关于本示例

对应的文件夹

数据存放在 C:\arcgis\ArcTutor\GP Service Examples\BufferPoints 中。完成下面的所有步骤后,表明您已经复制了此文件夹的内容。

数据准备

创建 toolshare 文件夹

步骤:
  1. 启动 ArcCatalog。
  2. 按照如下步骤,在自由选择的位置创建名为 BufferPts 的新文件夹:
    1. 导航至所选择的现有文件夹。
    2. 在目录树中,右键单击此文件夹,然后单击新建 > 文件夹
    3. 将此文件夹命名为 BufferPts
  3. 在目录树中,右键单击 BufferPts,然后单击新建 > 文件夹
  4. 将文件夹命名为 ToolData
  5. 在目录树中,右键单击 ToolData,然后单击新建 > 文件地理数据库
  6. 将该文件地理数据库命名为 Schema
  7. 使用相同的步骤,在 BufferPts 中创建名为 Scratch 的文件夹。在 Scratch 文件夹中,创建名为 Scratch 的新文件地理数据库。

创建工具箱

在目录树中,执行以下步骤:

步骤:
  1. 右键单击 BufferPts 文件夹。
  2. 指向新建 > 工具箱
  3. 将该工具箱命名为 BufferService

创建方案要素类

您需要将一个点要素类用作下述模型中将用到的要素集变量的方案。

步骤:
  1. BufferPts/ToolData 中,右键单击 Schema 地理数据库,然后单击新建 > 要素类
  2. 将此要素类命名为 Point

    要素类型为“点”。

  3. 单击下一步
  4. 对于坐标系,请选择地理坐标系 > 世界坐标系 > WGS 1984。(虽然坐标系可以选为“未知”,但不推荐这样做。)
  5. 单击下一步
  6. 接受 XY 容差的默认值,然后单击下一步
  7. 接受配置关键字的默认值,然后单击下一步
  8. 单击完成(此要素类不包含任何用户定义的属性)。
完成的工作文件夹

创建模型

通过以下步骤,可创建新的地理处理模型,以便对点要素进行缓冲。

步骤:
  1. 右键单击 BufferService 工具箱,指向新建,然后单击模型。将打开模型构建器 窗口。
  2. 要添加缓冲区工具,请遵照以下步骤
    1. 在“模型构建器”工具条上,单击添加 添加数据或工具
    2. 添加数据或工具 对话框中,导航至工具箱 > 系统工具箱 > 分析工具 > 邻域分析
    3. 单击缓冲区,然后单击添加。(另外一种等效的方法是将缓冲区工具从 ArcToolbox 窗口、搜索 窗口或目录 窗口中拖动到“模型构建器”画布上。)
      现在,“模型构建器”画布的显示如下所示:

      包含缓冲区工具的模型流程

  3. 使用“模型构建器”时,经常需要移动元素(工具和变量)和调整元素大小。在上图中,输出变量实际名为 Output Feature Class,但由于该变量大小的缘故名称被截断。要调整大小,可单击此输出变量,然后单击并拖动蓝色的小选择方块之一进行调整。现在模型的显示如下所示:
    输出变量的大小调整之后
  4. 右键单击 Buffer,指向获取变量 > 从参数,然后单击输入要素从工具参数中获取变量 模型现在如下图所示:将输入要素作为变量
  5. 右键单击 Input Features,然后单击属性。在输入要素属性 对话框中,单击数据类型选项卡。
  6. 选择数据类型下拉列表中,选择要素集。在从下面导入方案和符号系统框中,输入路径或浏览到上述步骤中创建的点要素类 Points数据类型属性
  7. 单击确定Input Features 变量现在将变为蓝色。
  8. 右键单击 Buffer,指向获取变量 > 从参数,然后单击距离 [值或字段]。新模型变量即创建完成。
  9. 您最好单击并拖动该变量,使其不位于 Input Features 变量的顶部,并且调整其大小以显示完整的变量名称。包含距离变量的模型
  10. 右键单击 Distance [value or field] 变量,然后单击重命名。将此变量重命名为 Distance
  11. 右键单击 Distance,然后单击属性。在距离属性 对话框中,单击数据类型选项卡。
  12. 选择数据类型下拉列表中,选择线性单位
  13. 单击确定
  14. 双击 Distance(或右键单击再单击打开)。将距离设置为 1000 米。Distance 变量现在变为蓝色,而 Output Feature Class 变量将变为绿色。这表示已经为 Buffer 提供了所有必要的输入数据。
  15. 右键单击 Output Feature Class 变量(Buffer 的输出),然后单击重命名。将该变量重命名为 Output Polygons
  16. 双击 Output Polygons,然后输入 %scratchworkspace%\BufferedPoints.shp 输出位置
  17. 单击确定
  18. 右键单击 Input Features,然后单击模型参数。该变量旁将显示字母 P(表示参数)。
  19. 右键单击 Distance,然后单击模型参数。该变量旁将显示字母 P
  20. 右键单击 Output Polygons,然后单击模型参数。该变量旁将显示字母 P

    现在模型应显示为与下图类似:完成的模型

  21. 在主“模型构建器”菜单中,单击模型,再单击模型属性
    1. 名称设置为 BufferPoints
    2. 标注设置为 Buffer Points
    3. 选中存储相对路径名选项。

    下图显示的即为这些设置:模型属性

  22. 单击确定
  23. 在主“模型构建器”菜单中,单击模型,再单击保存。然后再次单击模型,并单击关闭

测试模型

遵照下面几个步骤,可在 ArcMap 中测试模型;在发布服务之前最好进行测试。

步骤:
  1. 启动 ArcMap 然后添加数据创建地图,或者打开一个现有地图文档。
  2. 在 ArcMap 中,请使用地理处理 菜单打开地理处理选项 对话框和环境设置 对话框。
  3. 配置以下内容:
    • 地理处理选项:选中覆盖地理处理操作的输出复选框。
    • 地理处理选项:选中将地理处理操作的结果添加到显示中复选框。
    • 环境设置:展开“工作空间”类别,然后将“临时工作空间”设置为 BufferPoints\Scratch(即前面创建的文件夹)。

    这些设置如下图所示:地理处理选项

  4. 在 ArcMap 的目录 窗口中,导航至 toolshare 文件夹,然后选择之前创建的 BufferService 工具箱。
  5. 双击缓冲点。(也可以右键单击缓冲点,然后单击打开)。将打开缓冲点 工具对话框,如下图所示。缓冲点工具对话框
  6. 单击添加要素 添加要素,将点要素添加到缓冲区。可添加多个要素。
  7. 也可以更改距离参数。
  8. 单击确定

    此工具立即开始执行。此工具完成执行后,一个名为 BufferedPoints 的新图层将添加到 ArcMap 的内容列表中。

  9. 退出 ArcMap。不需要保存所做的更改。

发布服务

要将工具箱发布到 ArcGIS Server,必须具有对 ArcGIS Server 的管理员权限。要连接到服务器,可在目录树中展开 GIS 服务器条目,然后单击添加 ArcGIS Server。由服务器管理员(负责建立和维护 ArcGIS Server 安装帐户的人员)负责为您建立一个帐户并授予您管理员权限。

管理员权限

ArcGIS Server 的管理员连接建立完成后,便可以发布工具箱。

步骤:
  1. 在 ArcCatalog 中,右键单击 BufferService 工具箱,然后单击发布到 ArcGIS Server
  2. 发布到 ArcGIS Server 对话框中,选择需要发布到的服务器。将服务命名为 BufferService(这是默认名称,与工具箱的名称相同)。
  3. 单击下一步
  4. 单击完成

了解有关发布地理处理服务的详细信息

使用服务

通过下面几个步骤,可在 ArcMap 中使用地理处理服务。

步骤:
  1. 打开 ArcMap 然后添加您选择的数据,也可以打开现有地图文档。
  2. 在 ArcMap 的目录 窗口中,导航至 GIS 服务器下的服务器连接。
  3. 在服务器下找到地理处理服务 BufferService,然后展开 BufferService 以显示其中的内容,即缓冲点任务。
  4. 双击缓冲点任务。(也可以右键单击“缓冲点”,然后单击打开)。将打开缓冲点 任务对话框。请注意,与缓冲点 工具对话框(如上所示)不同,测试模型时,此对话框并不显示 Output Polygons 参数。这是因为 ArcGIS Server 将输出面写入服务器上的某个位置(通过 %scratchworkspace% 定义),而并不需要指定输出位置。BufferPoint 任务对话框
  5. 单击添加要素添加要素),将点要素添加到缓冲区。可添加多个要素。
  6. 也可以更改距离参数。
  7. 请确保关闭后台处理,以便通过运行以下步骤显示处理对话框:
    1. 在 ArcMap 中单击地理处理
    2. 选择地理处理选项
    3. 如果后台处理启用复选框处于选中状态,则请取消选中此复选框。否则可保持不变。
  8. 单击确定
  9. 单击地理处理菜单 > 结果,展开当前会话,然后展开 BufferPoints 条目。请注意查看任务执行的输出、输入、环境和消息的方式。每次执行地理处理工具时,结果都将写入结果 窗口。

    完成任务只需一小段时间。一个新图层将添加到 ArcMap 的内容列表中。此图层名为 Output Polygons [<时间>_<日期>],如下图所示。Output Polygons 图层

通过下面几个步骤,可以修改 BufferService 属性并再次运行缓冲点任务,以便查看这些属性更改后的效果。因此最好暂时不要退出 ArcMap。

修改服务属性

通过更改服务属性,可以影响任务的执行。

步骤:
  1. 目录 窗口中,导航至包含 BufferService 地理处理服务的服务器。
  2. 右键单击 BufferService,然后单击停止。更改地理处理服务的属性之前,必须停止地理处理服务。
  3. 右键单击 BufferService,再单击服务属性
  4. 单击参数选项卡。

三个影响任务执行的基本参数可以进行修改。根据以下说明更改这些参数后,单击确定,然后启动服务(右键单击 BufferService,然后单击“启动”)。然后,在 ArcMap 中再次运行该任务以便查看效果。

执行类型

同步表示在服务器的任务执行完成之前,客户端需要一直等待。异步表示服务器执行任务期间,客户端可以自由执行其他工作。您应该只针对执行速度快的任务选择同步。

BufferService 包含一项任务,即“缓冲点”,此任务执行速度很快。因此可执行类型更改为“同步”,重新启动该服务,然后再次执行“缓冲点”任务。如果选择同步执行,任务执行完成之前,进度对话框将一直处于打开状态。

服务器返回的最大记录数

您输入的数值将成为记录或要素从服务器传输到客户端的最大数量。值为 0 表示不会传输任何记录。默认值为 1000。停止该服务后,将此值更改为 0;重新启动该服务,然后再次执行“缓冲点”任务。任务开始执行并创建一个图层,但由于最大值已设为 0,因此图层中不存在任何要素。如果在结果 窗口中查看结果,会发现 Output Polygons 图层存在 <数据超出传输限制>。

显示消息

地理处理模型流程执行期间,模型会写入消息。这些消息包括警告、错误及其他信息。这些消息可能包含到服务器或局域网中数据的路径,而您可能不希望用户查看到此数据的路径。因此,默认情况下不显示消息。

选中显示消息旁的复选框,重新启动该服务,然后再次执行“缓冲点”任务。在进度对话框(如果选择服务同步运行)和结果中都可查看到更多消息。

开发和测试服务时,最好始终显示消息。

相关主题


3/7/2012