可用于具有 ArcGIS IPS 扩展模块许可的 ArcGIS 组织。
ArcGIS IPS 利用蓝牙或 Wi-Fi 信号定位建筑物或设施点内的用户。 墙壁灯障碍物可能会干扰无限信号的传输,从而降低室内定位的精度。 需要了解墙壁的确切位置和大小,才能实现 ArcGIS IPS 部署的最佳性能。
要创建墙壁,一种方式是为设施点中的所有墙壁手动创建面要素;但是,可能会出现错误。 可以改为使用以下方法之一创建墙壁要素:
- 从楼层和单元要素派生墙壁要素
- 从楼层平面图草图派生墙壁要素
- 从 BIM 数据派生墙壁要素
使用最适合您的 Indoors 数据的方法和组织可用许可。
从楼层和单元要素派生墙壁要素
注:
此工作流需要 ArcGIS Pro Advanced 许可。
此方法会从 ArcGIS Indoors 信息模型派生面墙壁。 当楼层和单元要素可用时,可使用该方法:
- 楼层要素表示设施点在不同楼层上的轮廓线。 每个面的边界表示建筑物的外立面,边界包围的面积表示楼层的表面积。 任意几何间隙表示楼梯、电梯和楼层上的其他孔洞。
- 单元要素表示设施点中非重叠功能区的轮廓线,例如工作空间、便利设施、零售空间、电梯和楼梯。 面边界会追踪分隔这些区域的墙壁立面的轮廓线。
要从楼层和单元要素派生墙壁要素,请完成以下步骤:
- 启动 ArcGIS Pro。
- 在 ArcGIS Pro 中打开 ArcGIS IPS 地图或准备新地图。
- 向地图添加楼层和单元要素类。
- 在内容窗格中,右键单击 Units 图层,然后单击连接和关联 > 添加连接。
添加连接对话框随即显示。
- 配置添加连接工具以确保 Levels 图层中的 Vertical_Order 字段在 Units 图层中同样可用:
- 单击输入表下拉箭头,然后单击 Units。
- 单击输入字段下拉箭头,然后单击 Level ID。
- 单击连接表下拉箭头,然后单击 Levels。
- 单击连接字段下拉箭头,然后单击 Level ID。
- 可以配置保留所有输入记录和索引连接字段参数。
- 单击验证连接以确保参数已正确配置。
- 单击确定。
- 为 Vertical_Order 字段设置定义查询以过滤特定楼层的单元和楼层要素类。
- 单击分析选项卡,然后单击工具 。
将出现地理处理窗格。
- 在地理处理窗格中,单击工具箱选项卡。
- 展开分析工具 > 叠加,然后单击擦除。
地理处理窗格中将打开擦除工具。
- 配置擦除工具参数:
- 单击输入要素下拉箭头,然后选择经过楼层过滤的楼层的要素图层。
- 单击擦除要素下拉箭头,然后选择经过楼层过滤的单元的要素图层。
- 对于输出要素类参数,提供命名约定以区分不同楼层的结果。
- 单击运行。
擦除工具会提取不同单元要素间表示选定楼层墙壁的区域。
- 针对每个可用楼层重复步骤 6 到 11。
提示:
可使用 模型构建器 自动执行此过程。
- 在内容窗格中,右键单击 Units 图层,然后单击连接和关联 > 移除连接。
移除连接对话框随即显示。
- 配置移除连接工具参数:
- 单击图层名称或表视图下拉箭头,然后单击 Units。
- 单击连接下拉箭头,然后单击 Levels。
- 单击确定。
Levels 和 Units 图层之间的连接将被移除。
- 单击返回 返回到工具箱列表。
- 展开数据管理工具 > 常规,然后单击合并。
地理处理窗格中随即打开合并工具。
- 配置合并工具参数:
- 单击输入数据集下拉箭头,然后选择所有通过擦除工具获取的楼层特定的墙壁。
- 对于输出数据集参数,在文本框中输入 Walls。
- 对于字段映射参数,确保 LEVEL_ID 字段作为输出字段列出。
- 单击运行。
为每个楼层提取的墙壁将合并成包含设施点墙壁的单一要素类。 此要素类为楼层感知型数据,可作为输入用于生成无调查的室内定位数据集。
从楼层平面图草图派生墙壁要素
注:
此工作流需要 ArcGIS Pro Advanced 许可。
此方法会从概述设施点楼层平面图的 ArcGIS Indoors 信息模型派生面墙壁。 要使用此方法,需要了解设施点中墙壁的近似厚度。 从楼层平面图草图派生墙壁要素时,会出现以下情况:
- 单元可以将楼层分为多个不重叠的功能区,但是无法准确表示区域的物理范围。
- 表示两个相邻房间的单元的边界相接触并近似定义分隔这两个房间的墙壁的中心线。
要从楼层平面草图派生墙壁要素,请完成以下步骤:
- 启动 ArcGIS Pro。
- 在 ArcGIS Pro 中打开 ArcGIS IPS 地图或准备新地图。
- 向地图添加楼层和单元要素类。
- 在内容窗格中,右键单击 Units,然后单击连接和关联 > 添加连接。
添加连接对话框随即显示。
- 配置添加连接工具以确保 Levels 图层中的 Vertical_Order 字段在 Units 图层中同样可用:
- 单击输入表下拉箭头,然后单击 Units。
- 单击输入字段下拉箭头,然后单击 Level ID。
- 单击连接表下拉箭头,然后单击 Levels。
- 单击连接字段下拉箭头,然后单击 Level ID。
- 为 Vertical_Order 字段设置定义查询以过滤特定楼层的 Units 和 Levels 图层。
- 单击分析选项卡,然后单击工具 。
将出现地理处理窗格。
- 在地理处理窗格中,单击工具箱选项卡。
- 展开数据管理工具 > 要素,然后单击面转线。
地理处理窗格中将打开面转线工具。
- 配置面转线工具参数:
- 单击输入要素下拉箭头,然后选择经过楼层过滤的单元要素。
- 对于输出要素类参数,使用命名约定提供输出要素类的名称,以区分不同楼层的结果。
- 单击运行。
面转线工具将以线的形式提供过滤楼层的墙壁要素。
- 检查输出要素类并识别可能想要进一步分割线的情况,例如门和其他孔洞。
- 移除不表示墙壁中心线的线。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开分析工具 > 邻近分析,然后单击缓冲区。
在地理处理窗格中打开缓冲区工具。
- 配置缓冲区工具参数:
- 单击输入要素下拉箭头,然后选择表示已过滤楼层的墙壁的线要素类。
- 对于输出要素类参数,使用命名约定提供输出要素类的名称,以区分不同楼层的结果。
- 对于距离 [值或字段] 参数,提供墙壁的厚度。
- 单击运行。
缓冲区工具将以缓冲面的形式为过滤楼层创建墙壁要素。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开数据管理 > 概化,然后单击融合。
随即将在地理处理窗格中打开融合工具。
- 配置融合工具参数:
- 单击输入要素下拉箭头,然后选择缓冲区工具创建的面要素类。
- 对于输出要素类参数,提供要在已聚合要素中创建的要素类的名称。
- 确保选中创建多部件要素复选框。
将剩余可选参数留空。
所有墙壁要素将合并为一个多部件要素。
- 创建 LEVEL_ID 字段,然后将数据类型值设置为文本。
- 设置以下字段属性值:
- 字段名称 -LEVEL_ID
- 别名 - 级别 ID
- 数据类型 - 文本
- 允许为空 - 选中此复选框
- 属性域 - 留空
- 默认值 - 留空
- 长度 - 保留默认值
在创建字段后,将正确的 LEVEL_ID 值与要素相关联。
注:
针对每个可用楼层重复步骤 6 到 22。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开数据管理工具 > 常规,然后单击合并。
地理处理窗格中随即打开合并工具。
- 配置合并工具参数:
- 单击输入数据集下拉箭头,然后选择包含 Level ID 值的要素类。
- 对于输出数据集参数,在文本框中输入 Walls。
- 单击运行。
包含各个楼层的墙壁的要素类将合并成包含设施点墙壁的单个要素类。 此要素类是楼层感知型数据,可用作生成室内定位数据集工具无调查方法的输入。
从 BIM 数据派生墙壁要素
此方法将使用设施点的 BIM 数据派生面墙壁。 如果有效的 BIM 数据(包括墙壁信息)可用,则可以使用此方法。
要从 BIM 数据派生墙壁要素,请完成以下步骤:
- 启动 ArcGIS Pro。
- 在 ArcGIS Pro 中打开 ArcGIS IPS 地图或准备新地图。
- 打开新地图或场景。
- 单击分析选项卡,然后单击工具 。
将出现地理处理窗格。
- 在地理处理窗格中,单击工具箱选项卡。
- 展开 Indoors 工具,然后单击将 BIM 导入室内数据集。
地理处理窗格中将打开将 BIM 导入室内数据集工具:
- 配置将 BIM 导入室内数据集工具参数:
- 单击输入 BIM 楼层平面图面图层下拉箭头,选择源 BIM 文件的楼层平面图数据集中的 Floorplan_Polygon 要素图层。
- 单击目标单元要素下拉箭头,然后选择 Units 要素图层。
- 单击目标细节要素下拉箭头,然后选择 Details 要素图层。
- 单击目标楼层要素下拉箭头,然后选择 Levels 要素图层。
- 单击目标设施点要素下拉箭头,然后选择 Facilities 要素图层。
- 对于设施点 ID 参数,提供唯一设施点 ID。
- 对于设施点名称参数,提供建筑物的名称。
- 对于一楼名称参数,提供建筑物一楼的名称,例如 FIRST FLOOR。
- 展开 3D 要素。
- 对于目标细节 3D 要素参数,单击浏览 ,然后从室内 3D 数据集中选择 3D Details 多面体要素类。
注:
将 BIM 导出到室内数据集工具仅支持 Autodesk Revit 中的 BIM 文件(文件扩展名为 .rvt)。
- 单击运行。
建筑物模型中的 BIM 数据将导入 ArcGIS IndoorsArcGIS Indoors 信息模型。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开数据管理工具 > 常规,然后单击追加。
随即将在地理处理窗格中打开追加工具。
- 配置追加工具参数:
- 单击输入数据集下拉箭头,然后选择 Details 3D 要素类。
- 单击目标数据集下拉箭头,然后选择 Walls 3D 要素类。
- 单击字段匹配类型下拉箭头,然后单击使用字段映射协调字段差异。
- 对于表达式参数,打开 SQL 切换按钮以打开 SQL 模式,然后在文本框中输入以下查询:USE_TYPE IN ('Walls', 'Columns', 'Structural Columns')。
- 展开更新选项。
- 在要更新的匹配字段下映射以下字段:
目标字段 输入字段 WALL_ID
DETAIL_ID
WALL_TYPE
USE_TYPE
LEVEL_ID
LEVEL_ID
SOURCE_ID
SOURCE_ID
- 单击运行。
将在 Walls 3D 要素类中填充 Details 3D 要素类中的墙壁要素。
- 在地理处理窗格中,单击返回 返回到工具箱列表。
- 展开 3D Analyst 工具 > 3D 要素 > 提取,然后单击多面体轮廓线。
地理处理窗格中将打开多面体轮廓线工具。
- 配置多面体轮廓线工具参数:
- 单击输入要素类下拉箭头,然后选择 Walls 3D 要素类。
- 对于输出要素类参数,在文本框中输入 Walls。
- 将分组字段参数留空。
- 单击运行。
将创建包含设施点墙壁的 Walls 要素类。 此要素类不是楼层感知型。 将图层定义为楼层感知型数据,以将其用作生成室内定位数据集工具无调查方法的输入。
注:
如果 BIM 模型不包含门孔洞,则手动修改 Walls 要素类以包含这些孔洞。
验证墙壁信息
在派生墙壁要素后,手动验证结果。 您可以执行多次修改,例如编辑特殊单元和纠正墙壁数据,以根据需要改善输出。 下面的工作流可确保包含设施点墙壁的输出要素类的准确性,确保其可以有效地作为输入以生成不含调查的室内定位数据集。
添加特殊单元
有时,无法将表示建造结构的一些要素(例如电梯或支柱)提取为墙壁。 要将其手动添加到 Walls 要素类,请完成以下步骤:
特殊单元已添加到 Walls 要素类。 确认添加的要素包含正确的 LEVEL_ID 值。
纠正墙壁数据
Units 要素类数据中的不准确性可能导致室内空间的空间制图表达错误。 这可能导致以下问题:
- 最终输出要素类中缺少某些墙壁或其他建筑物要素
- 最终输出要素类中出现冗余墙壁要素
注:
可使用缓冲区和分割工具纠正墙壁数据。 要使用这些分析工具,需要 ArcGIS Pro Advanced 许可。
添加缺失的墙壁要素
可使用创建要素类、缓冲区和追加工具创建缺失的墙壁要素并将其添加到 Walls 要素类。
按照以下步骤添加缺失的墙壁要素:
- 识别 Walls 要素类中缺少墙壁要素的情况。
- 单击分析选项卡,然后单击工具 。
将出现地理处理窗格。
- 在地理处理窗格中,单击工具箱选项卡。
- 展开数据管理工具 > 要素类,然后单击创建要素类。
地理处理窗格中随即打开创建要素类工具。
- 配置创建要素类工具参数:
- 对于要素类名称参数,提供要素类名称。
- 对于要素类位置参数,提供存储要素类的位置。
- 对于几何类型参数,单击下拉箭头,然后选择折线。
- 对于坐标系参数,选择坐标系。
- 单击运行。
将创建线要素类。
- 创建数据类型为文本的 LEVEL_ID 字段。
- 设置以下字段属性值:
- 字段名称 -LEVEL_ID
- 别名 - 级别 ID
- 数据类型 - 文本
- 允许为空 - 选中此复选框
- 属性域 - 留空
- 默认值 - 留空
- 长度 - 使用默认值
- 启动编辑会话并绘制表示缺失墙壁的线。
确保绘制的线尽可能靠近墙壁要素的横截面的中心。
- 将正确的 LEVEL_ID 值关联到所有新建要素。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开分析工具 > 邻近分析,然后单击缓冲区。
在地理处理窗格中打开缓冲区工具。
- 配置缓冲区工具参数:
- 对于输入要素参数,使用在上面第 5 步中创建的要素类名称值。
- 对于距离 [值或字段] 值,提供墙壁的厚度。
- 单击运行。
缓冲区工具将以缓冲面的形式为过滤楼层创建墙壁要素。
- 单击返回 返回到工具箱列表。
- 在地理处理窗格中,展开数据管理工具 > 常规,然后单击追加。
随即将在地理处理窗格中打开追加工具。
- 配置追加工具参数:
- 单击输入数据集下拉箭头,然后选择缓冲区工具创建的要素类。
- 单击目标数据集下拉箭头,然后选择 Walls 要素类。
- 单击字段匹配类型下拉箭头,然后选择使用字段映射协调字段差异。
- 单击运行。
缺失的墙壁要素将添加到 Walls 要素类。
移除冗余的墙壁要素
按照以下步骤移除冗余的墙壁要素:
冗余墙壁要素即会从 Walls 要素类中移除。