Skip To Content

为 Indoor Viewer 准备场景

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

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

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

所需属性

如果已使用创建室内数据集工具创建室内数据集,则必须先创建其他属性字段,并使用 Facilities、Units 和 Details 要素类中的值填充这些字段,然后才能将其转换为多面体。

注:

如果要使用通过创建 Indoors 数据库工具创建的 Indoors 地理数据库,则以下属性已存在,无需进行创建。

  1. 打开包含该室内数据集的 GeoScene Pro 工程。
  2. 目录窗格中,右键单击 Details 要素类,然后选择设计 > 字段

    字段视图随即显示。

  3. 单击字段选项卡上的新建字段按钮,或单击提示单击此处以添加新字段的视图中的最后一行。

    将指针置于字段名称列。

  4. 如下配置新属性:
    • 字段名称 - ELEVATION_RELATIVE
    • 别名 - 相对高程
    • 数据类型 - 双精度型
    • 允许空值 - 已选中
  5. 计算图层中要素的相对高程。
    1. 右键单击内容窗格中的要素类,然后单击属性表
    2. 右键单击 Relative Elevation 字段,然后单击计算几何
    3. 对于几何属性参数,将相对高程设置为字段,将最小 z 坐标设置为属性
    4. 选择相应的坐标系。
    5. 单击确定

    系统将使用图层中每个要素的相对高程填充 Relative Elevation 字段。

  6. 以与 Units 和 Facilities 要素类相同的方式创建、配置和填充 ELEVATION_RELATIVE 字段。
  7. 向 Facilities 要素类添加另一个字段并如下配置:
    • 字段名称 - LEVELS_ABOVE_GROUND
    • 别名 - 地面以上级别
    • 数据类型 - 长整型
    • 允许空值 - 已选中

    对于 Facilities 要素类,只有此字段为必填字段。

  8. 使用 Facilities 图层中每个要素的地上以上级别数填充 Levels Above Ground 字段。

现在可以准备 3D 场景以在 Viewer 中对其进行使用。

创建 3D 场景

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

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

    复制的图层保留其属性,但需要配置添加的任何新图层的属性。 例如,如果添加楼层感知型图层(位于 GeoScene Pro 3.1),则需要在场景中配置楼层感知型属性

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

为 3D 准备单元

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

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

    将弹出图层属性对话框。

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

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

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

    仅保留新的 Units3D 图层。

  9. 用于 Units3D 图层的启用弹出窗口

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

为 3D 准备细节

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

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

    将弹出图层属性对话框。

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

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

    注:

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

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

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

    3. 表达式文本框中输入 1,然后单击确定
    4. 单位参数设置为
  7. 运行 3D 图层转要素类工具:
    1. 对于输入要素图层参数,使用 Details 图层。
    2. 对于输出要素图层参数,将其命名为 Details3D 并将其放置在 Indoors_3D 要素数据集中。
  8. 从场景中移除该 Details 线图层。
    注:

    仅保留新的 Details3D 图层。

分隔细节

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

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

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

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

将面转换为 3D 立面

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

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

    将弹出图层属性对话框。

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

    如有必要,选择格式化面符号

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

    您可以使用自己的规则包或带纹理的多面体构建模型来获得更加个性化的外观。 所提供的示例规则将使用设施点高度和级别数属性来创建带纹理的简单 3D 立面,并按楼层分割。

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

  8. 格式化面符号窗格的属性部分中,系统将直接从设施点面读取 HEIGHT_RELATIVE 和 LEVELS_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 图层启用弹出窗口

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

启用边渲染(可选)

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

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

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