为 Indoor Viewer 准备场景

ArcGIS Enterprise (10.9.1)    |

可用于具有 Indoors 扩展模块许可的 ArcGIS 组织。

通过将 2D 地图中使用的室内图层转换为 ArcGIS Pro 中的多面体,您可以选择创建 3D 场景以用于 Indoor Viewer 应用程序。 通过设置单元和细节的相对高程,然后将设施点面转换为带纹理的立面,您可以使用 Viewer 创建 3D 室内场景以进行浏览和导航。

注:
  • 如果随附的 web 地图已经发布,则该应用程序仅支持 3D 模式。 因此,不需要将独立表与 Web 场景一起发布。
  • 3D 模式下信息面板的内容取决于 2D Web 地图的配置。 除非另有说明,否则 3D 场景中的图层名称必须与 Web 地图中的相应 2D 图层匹配,并且 2D 图层必须已配置弹出窗口,以便单击 3D 场景中的要素时在信息面板中显示信息。

创建 3D 场景

在为 3D 准备单元之前,请完成以下步骤:

  1. 启动 ArcGIS Pro 并打开包含您所准备的、要用于 Viewer 的 2D 地图
  2. 插入选项卡上,单击新建地图下拉箭头,然后单击新建全球场景
  3. 从完整的 2D 室内地图中复制所有图层(独立表除外),然后将其粘贴到刚刚创建的场景中。
  4. 将您的场景配置为楼层感知型场景。
    注:

    ArcGIS OnlineViewer 应用程序不支持非楼层感知型场景。 ArcGIS Enterprise 11 及更高版本将不支持非楼层感知型场景。

  5. Indoors 数据库中创建一个名为 Indoors_3D 的要素数据集。 该应用程序应与现有的 Indoors 要素数据集具有相同的空间参考。
  6. 在场景的内容窗格中,通过取消选中 WorldElevation3D/Terrain3D 图层的复选框来关闭高程表面图层。

为 3D 准备单元

要为 3D 准备单元,请完成以下步骤:

  1. 右键单击 Units 图层,然后单击属性

    将弹出图层属性对话框。

  2. 高程选项卡上,将要素位于参数设置为绝对高度处
  3. 将要素高程设置为使用几何 z 值选项。
  4. 制图偏移参数设置为 0.5 米。
    图层属性
  5. 定义查询选项卡上,将定义查询设置为不包括值并指定任何楼梯或电梯单元 USE_TYPE 属性。
  6. 单击确定
  7. 运行 3D 图层转要素类工具:
    1. 对于输入要素图层参数,使用 Units 图层。
    2. 对于输出要素图层参数,将其命名为 Units3D 并将其放置在 Indoors_3D 要素数据集中。

      Web 场景中的单元图层的名称必须为 Units3DUnits。 此步骤的输出要素类可以具有不同的名称,但是单元的场景图层必须具有有效名称。

  8. 从场景中移除 Units 图层。
    注:

    仅保留新的 Units3D 图层。

  9. 楼层属性设置为 LEVEL_ID,以将 Units3D 图层设置为楼层感知型图层。
  10. 用于 Units3D 图层的启用弹出窗口

    已配置的弹出窗口应包括所有可用属性。

为 3D 准备细节

要为 3D 准备细节,请完成以下步骤:

  1. 右键单击 Details 图层,然后单击属性

    将弹出图层属性对话框。

  2. 高程选项卡上,将要素位于参数设置为绝对高度处
  3. 将要素高程设置为使用几何 z 值选项。
  4. 制图偏移参数设置为 0.5 米。
  5. 定义查询选项卡上,将定义查询设置为利用类型包含值并选择要在场景中显示为拉伸后的要素的所有要素。

    其中通常包括墙壁、门、窗户和圆柱。

    注:

    电梯、楼梯和注记要素不应包括在内。

  6. 在 Details 图层上设置拉伸
    1. 外观选项卡上的拉伸组中,为要素拉伸类型参数选择最小高度选项 最小高度
    2. 单击拉伸表达式按钮 拉伸表达式

      随即显示表达式构建器对话框。

    3. 表达式文本框中键入您想要拉伸要素的高度,然后单击确定

      例如,键入 1 以将要素拉伸到 1 米。

    4. 单位参数设置为
  7. 运行 3D 图层转要素类工具:
    1. 对于输入要素图层参数,使用 Details 图层。
    2. 对于输出要素图层参数,将其命名为 Details3D 并将其放置在 Indoors_3D 要素数据集中。
  8. 楼层属性设置为 Level_ID,以将 Details3D 图层设置为楼层感知型图层。
  9. 从场景中移除该 Details 线图层。
    注:

    仅保留新的 Details3D 图层。

分隔细节

要分隔细节,请完成以下步骤:

  1. 在场景中创建 Details3D 图层的副本,并使用以下名称重命名每个图层:
    • Details Walls
    • Details Doors
  2. 楼层属性设置为 LEVEL_ID,以将新图层设置为楼层感知型图层。
  3. 在两个 Details 图层的定义查询选项卡上,将定义查询设置为不包括值并指定具有 USE_TYPE 属性的任何楼梯或电梯单元。
  4. 在 Details Walls 图层的定义查询选项卡上,将定义查询设置为包括值并用表示(非玻璃)墙壁或圆柱的 USE_TYPE 属性指定任何行。
  5. 在 Details Doors 图层的定义查询选项卡上,将定义查询设置为包括值并用表示门、窗户或玻璃墙壁的 USE_TYPE 属性指定任何行。

    这些细节将变为部分透明以表示它们可以被查看或遍历。

  6. 外观选项卡上的效果组中,为 Details Doors 图层将透明度滑块设置为 70%

将设施点面转换为 3D 立面

要将设施点面转换为带纹理的 3D 立面,请完成以下步骤:

  1. 右键单击 Facilities 图层,然后单击属性

    将弹出图层属性对话框。

  2. 高程选项卡上,将要素高程设置为使用几何 z 值选项。
  3. 制图偏移参数设置为 0.5 米。
  4. 内容窗格中单击 Facilities 图层的符号以打开符号系统窗格。

    随即显示格式化面符号窗格。

  5. 单击属性选项卡。
  6. 单击图层按钮 图层,然后选择程序填充
    格式化面符号
  7. 单击规则以分配程序规则包 (*.rpk),然后选择 Symbology 文件夹中的 Indoors_TexturedFacade.rpk 文件(包含在 Indoors 产品数据下载中)。
    注:

    您可以使用自己的规则包或带纹理的多面体构建模型来获得更加个性化的外观。 所提供的示例规则将使用“相对高度”和“地面上方高度”属性来创建带纹理的简单 3D 立面,并按楼层进行分割。

    将出现程序填充参数。 将鼠标悬停在每个参数上,以获取有关值将如何更改已完成的建筑物立面外观的信息。

  8. 格式化面符号窗格的属性部分中,将直接从设施点面读取 HEIGHT_RELATIVELEVELS_ABOVE_GROUND 属性,如蓝色数据库连接符号所示:
    格式化面符号部分
  9. 显示选项部分可让您自定义屋顶、墙壁和窗户样式和纹理。
  10. 在每个程序填充参数更改后,单击应用以在场景中查看结果。
  11. 几何选项部分中,使用选项简化面,对其进行轻微缓冲或更改窗口大小。
  12. 单击应用以创建最终的 3D 纹理立面模型。
  13. 运行 3D 图层转要素类工具:
    1. 对于输入要素图层参数,使用 Facilities 图层。
    2. 对于输出要素图层参数,将其命名为 Facilities3D 并将其放置在 Indoors_3D 要素数据集中。

      Facilities3D 多面体图层随即添加到场景。

  14. 将 Facilities3D 图层重命名为 Facilities Textured

    Web 场景中设施点图层的名称必须为 FacilitiesFacilities Textured

  15. 从场景中移除 Facilities 面图层。
  16. 为 Facilities Textured 图层启用弹出窗口

    已配置的弹出窗口应包括所有可用属性。

  17. 设置场景的室内图层属性,以将场景设置为楼层感知型场景。
    1. 对于设施点参数,选择 Facilities Textured
    2. 对于楼层参数,选择 Levels

启用边渲染(可选)

ArcGIS Pro 中查看 Indoors 单元和墙壁或将其作为已发布的场景图层进行查看时,该单元和墙壁有时会呈现冲刷后的外观。 要增强多面体要素的边和对比度,可以选择启用边渲染。

  1. 对于 Details 和 Units 图层,在必要时于内容窗格中展开图层,然后单击白色符号以打开格式化网格符号窗格。
  2. 单击选项卡并选择白色带边(使用纹理)

现在,您可以共享场景,以将其共享给您的 ArcGIS 组织,以便在 Viewer 应用程序中对其进行使用。