练习 1:自动对图层分组

工作流可以自动完成一组过程。您可以为过程指定参数,或在运行工作流时由您(或其他人)填写。

在此课程中,您将编辑预定义工作流,该工作流将从存储了 SDF 文件的文件夹中创建“显示管理器”图层,并将其保存为 .layer 文件。您将创建一个用来容纳这些图层的组,然后将图层移动到该新组中。

编辑工作流的步骤

  1. AutoCAD Map 3D 工具集中,创建一个地图。
    • 依次单击 “新建”“图形”。
    • 选择 map2d.dwt 样板,然后单击“打开”。
  2. 打开样例工作流。
    • 单击“工具”选项卡
    • “工作流”面板中,单击下拉式列表中的“从文件打开工作流”
    • 浏览到作为本教程的样例数据的一部分的样例工作流。打开 Batch Save Layer.xoml
    • 单击 (编辑)。
  3. 在工作流设计器中,确保在右侧的活动面板中AutoCAD Map 3D 工具集工具箱已展开。

    展开右侧的 AutoCAD Map 3D 工具集活动。单击“适合屏幕尺寸”以同时查看所有活动。

  4. 双击“显示目录内容”活动以打开输入编辑器。

    此活动会根据指定的过滤器在指定文件夹中搜索文件,在本例中,会在指定的文件夹中搜索所有 SDF 文件。

  5. 指定包含 SDF 文件的文件夹。

    选择包含两个或三个 SDF 文件的文件夹。如果没有包含 SDF 文件的文件夹,可以使用教程提供的样例 SDF 文件来创建一个文件夹。

  6. 从活动面板中拖动“添加组”活动并将其放置在 LoopAddLayers 活动的前面。(由于您只需要一个组,因此可将该组放置在 LoopAddLayers 活动的外部。)

    LoopAddLayers 是一项 ForEach 活动,此活动可对指定的项目集合迭代执行指定的动作。可以在“实用程序”工具箱中找到此类型的活动。

    在本例中,该 ForEach 活动已重命名为“LoopAddLayers”以说明此活动的作用。此活动将检查“显示目录内容”活动中指定的文件夹中的每个 SDF 文件。对于每次迭代,此活动都会连接到一个 SDF 文件并将要素图层添加到“显示管理器”中。

    新“添加组”活动将创建一个用来容纳新图层的组。由于 LoopAddLayers 活动会将图层添加到组中,因此必须在循环活动开始之前创建组。

  7. 双击新“添加组”活动以查看其输入编辑器。按如下方式设置其参数,然后单击“确定”:
    • 将新组命名为 SDFLayers。
    • 在“显示可选参数”下,将活动命名为“添加 SDFLayersGroup”。

    将该“添加组”活动拖动到 LoopAddLayers 活动的上方,并更改其参数。

  8. 单击 LoopAddLayers 活动的加号符号将其展开。
  9. 从活动面板中拖动“更改要素图层特性”活动,并将其放置在 LoopAddLayers 活动的内部、“创建图层”的下面。

    由于您要更改所添加的每个图层的“组”特性,因此请将该活动放置在被称作“LoopAddLayers”的 ForEach 活动内部。

  10. 双击新的“更改要素图层特性”活动。按如下方式设置其参数,然后单击“确定”:
    • 对于“图层”,选择“创建图层”活动的输出。

      通过选择上一活动的输出,您将当前活动“绑定”到其前任活动。上一活动的结果尚未存在于当前地图中。通过绑定,您可以指定当运行工作流时将要创建的图层。

      单击“图层”字段旁边的向下箭头,并在“先前动作的结果”下展开“创建图层”活动,然后选择“图层”。

    • 对于“组”,选择“添加 SDFLayers 组”活动的输出。

      展开“显示可选参数”部分。单击“组”字段旁边的向下箭头,并在“先前动作的结果”下展开“添加 SDFLayers 组”活动,然后选择“组”。

      将“更改要素图层特性”活动拖动到 LoopAddLayers 活动内部,并将其放置在“创建图层”之后。更改其参数以指定要更改的图层和图层组。

    • 将活动的“显示名称”更改为“将 SDF 图层添加到组”。
  11. 使用其他名称保存编辑的工作流。
    • 使用“另存为”而不是“保存”,以免覆盖预定义工作流。
    • 为工作流输入位置和名称。将新工作流命名为“批量保存图层已扩展”。
    • 单击“保存”。

要继续此教程,请转到练习 2:自动执行 AutoCAD 命令