能否通过API为BIM360/ACC中模型的属性集添加属性?
关于BIM360/ACC模型属性集添加属性的API支持问题
直接通过官方API修改BIM360/ACC中原始模型文件自带的属性集及属性是不支持的,原因如下:
- Model Derivative API仅提供模型数据的转换、提取等只读操作,没有权限修改源模型的属性信息;
- BIM360/ACC中的模型属性本质上与建模软件(如Revit)生成的源文件绑定,官方未开放直接修改源模型属性的API端点。
可行的替代方案
1. 前端Viewer会话内临时添加属性
如果只需要在Viewer展示时临时附加属性,可通过Viewer API实现,不会同步回BIM360/ACC源模型:
- 可通过
viewer.model.getData().instanceTree获取元素数据,自定义存储结构来关联元素ID与新增属性; - 也可开发自定义Viewer扩展,封装批量添加属性的逻辑,遍历目标元素ID完成属性赋值。
2. 项目级自定义属性关联
若需求是添加项目维度的附加属性(非模型文件自带属性集),可使用BIM 360 API的项目自定义属性功能:
- 先创建项目级的属性定义;
- 再通过API将属性关联到指定元素,该方案支持批量操作,属性会持久化存储在BIM360/ACC项目中,但不属于模型文件本身的属性集。
3. 持久化修改源模型属性
如果需要修改模型文件自带的属性集并持久化,只能通过建模软件(如Revit)打开BIM360/ACC中的源文件,直接在软件内修改属性后重新上传,再重新生成衍生模型。
内容的提问来源于stack exchange,提问作者Philipp Kolbe
相关产品推荐
相关产品推荐

