适用于具有 Indoors 功能许可的门户。
描述
将楼层平面图从 CAD 文件导入到包含 ArcGIS Indoors 信息模型的工作空间中。
使用方法
将载入楼层平面图数据的地理数据库必须已经存在并且包含必需的 Indoors 模型项目。
使用企业级地理数据库时,该连接文件必须直接连接到数据库,并且应由数据库所有者建立此连接。
输入 CAD 数据应采用 DWG 或 DGN 格式。
CAD 文件路径存储在 Excel 电子表格中。模板文件随附在 ArcGIS Pro 安装的 Resources\Indoors\MappingFile 文件夹中。
唯一 ID 分隔符参数将按 Indoors 模型等级分隔键值。例如,使用句点生成的 ID 类似 ESRI.REDLANDS.OOA。使用下划线生成的 ID 类似 ESRI_REDLANDS_OOA。
如果使用狭长面阈值参数,则标识的狭长面要素将置于位于 ArcGIS Pro 工程的临时文件夹中的检查地理数据库中。
当在配置电子表格中将 CLOSE_DOORS 列设置为 Y 时,可使用关门缓冲区参数解决较差的 CAD 拓扑(例如,门和墙壁之间的线间距)。
警告:
在将 CLOSE_DOORS 设置为 Y 的情况下运行该工具之前,标识“CAD 图层转 FC 映射”工作表的 OPENINGS 列中要合并的折线。
可选面积测量单位参数用于定义在导入楼层平面图时,用于计算面积字段的测量单位。默认为平方英尺。
将根据级别属性工作表中的 ELEVATION_RELATIVE 属性值来计算 Levels、Units、Sections 和 Zones 要素的 Z 值。
如果数据存在于输入地理数据库中,则可使用 FACILITY_ID 和 LEVEL_ID 属性值确定要替换的要素。
语法
arcpy.indoors.ImportFloorplansToIndoorsGDB(in_geodatabase, in_excel_template, uniqueid_delimiter, {sliver_threshold}, {door_close_buffer}, {area_unit_of_measure})
参数 | 说明 | 数据类型 |
in_geodatabase | 将载入楼层平面图数据的 Indoors 地理数据库(文件或企业级)。 | Workspace |
in_excel_template | 包含输入和配置参数的 Excel 电子表格(.xls 或 .xlsx 文件)。 | File |
uniqueid_delimiter | 指定将按 Indoors 模型等级分隔键值的分隔符。
| String |
sliver_threshold (可选) | 定义狭长面的周长与面积之比。可在导入单位面时使用,以提高导入数据的质量。确定为狭长面的单位面将置于位于 ArcGIS Pro 工程的临时文件夹中的检查地理数据库中。默认值为 2。 | Long |
door_close_buffer (可选) | 该工具以门为原点搜索的距离(以英寸为单位),以查找并捕捉到最近的墙壁。当在输入 Excel 模板文件中将 CLOSE_DOORS 列设置为 Y 时,将使用此参数。默认值为 0。 | Double |
area_unit_of_measure (可选) | 在导入楼层平面图时,指定用于计算 AREA_GROSS 和 AREA_NET 字段的面积的测量单位。
| String |
派生输出
名称 | 说明 | 数据类型 |
updated_gdb | 加载了楼层平面图数据的已更新输入地理数据库。 | 工作空间 |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 ImportFloorplansToIndoorsGeodatabase 函数。
import arcpy
arcpy.indoors.ImportFloorplansToIndoorsGDB('C:/Indoors/ExampleCampus.gdb',
'C:/Indoors/ExampleCampus/Config_ExampleCampus_CAD.xlsx',
'PERIOD', 2, 0, 'SQUARE_FEET')
以下独立脚本演示了如何使用 ImportFloorplansToIndoorsGeodatabase 函数。
# Name: Indoors_ImportFloorplansToIndoorsGDB_example2.py
# Description: Imports CAD data into an Indoors geodatabase.
import arcpy
# Set geodatabase that is populated with the Indoors Model
in_geodatabase = 'C:/Indoors/ExampleCampus.gdb'
# Spreadsheet that points to CAD files and defines field mapping
in_excel_template = 'C:/Indoors/Config_ExampleCampus_CAD.xlsx'
# Set tool parameters
uniqueid_delimiter = 'PERIOD'
sliver_threshold = 2
door_close_buffer = 0
area_unit_of_measure = 'SQUARE_FEET'
# Run the tool
arcpy.indoors.ImportFloorplansToIndoorsGDB(in_geodatabase, in_excel_template,
uniqueid_delimiter, sliver_threshold,
door_close_buffer, area_unit_of_measure)
环境
许可信息
- Basic: 否
- Standard: 否
- Advanced: 需要 Indoors