MBI经验点.md 1.6 KB

经验知识点

从模型里面读取到的数据

  • BIMID:格式为:楼层Id:RevitId. 示例:Fl11010500276984c300bffd11e9878daf61c33e94da:1095969
  • BIMLocation:格式为:"134757.000687809,109458.824791643,85300.0000000031","x,y,z"

空间

  • RoomLocalName:
string roomNum="";//空间参数-编号,从模型中读取
string roomName="";//空间参数-名称,从模型中读取
string localName=roomName;//空间物理世界本地名称的值
if(roomName==""||rommName=="空间")
	localName=$"{roomName} {roomNum}";

设备

  • EquipLocalID 设备本地编码,从模型中读取
  • EquipLocalName 设备本地名称,从模型中读取

部件

  • EquipLocalID 设备本地编码,从模型中读取
  • EquipLocalName 设备本地名称,从模型中读取
  • 物理世界创建部件需要传所依赖的设备 Owner存放关联设备的RevitId,这个是由模型里面的几何关系确定的。

上传时的逻辑

  • 从物理世界下载本层的数据(空间,设备,部件,信标)
  • 从模型重新计算本层的数据(空间,设备,部件,信标)
  • 两组数据依据BIMID求差,交集,得到增加,修改,删除的集合 > BIMID重复的问题??多个岗位共用一个BIMID??保留信息点多的岗位。出现原因:未知
    > 设备族编码更改问题:需要删除重建?? 来源:模型修改设备族编码了
    > 物理世界的BIMID只有楼层部分或为空,保留不删除。来源:台账创建的岗位

关系-设备所在元空间(还有吗?)

  • 删除岗位时,同步删除关系
  • 更新岗位时,关系删除重建
  • 添加岗位时,新增关系