目录 BIM及背景 BIMserver概览 存储过程 查询过程 张亚迪
存在信息孤岛 局部、单点的应用 没有统一的平台 连续管理模型 和补充管理数据 设计模型 CAD、PKPM… 设计师 存在信息孤岛 局部、单点的应用 设施监控与维护 运营 结构设计及检查 结构师 没有统一的平台 连续管理模型 和补充管理数据 施工模型 预算软件 鲁班… 施工
BIM Building Information Model 建筑信息模型 即建筑信息模型,以三维数字技术为基础,集成了建筑工程项目各种相关信息的工程数据模型, 项目概念阶段:项目选址模拟分析、可视化展示等等; 勘察测绘阶段:地形测绘与可视化模拟、地质参数化分析与法案设计等等; 项目设计阶段:参数化设计、日照能耗分析、交通线规划、管线优化、结构分析、风向分析、环境分析等等; 招标投标阶段:造价分析、绿色节能、方案展示、漫游模拟等等; 施工建设阶段:施工模拟、方案优化、施工安全、进度控制、实时反馈、工程自动化、供应链管理、场地布局规划、建筑垃圾处理等等; 项目运营阶段:智能建筑设施、大数据分析、物流管理、智慧城市、云平台存储等等; 项目维护阶段:3D点云、维修检测、清理修整、火灾逃生模拟等等; 项目更新阶段:方案优化、结构分析、成品展示等等; 项目拆除阶段:爆破模拟、废弃物处理、环境绿化、废弃运输处理等等。
BIM实现拓扑
IFC IFC(Industry Foundation Classes) 由国际协同工作联盟IAI发布 定义建筑物和建筑工程数据 EXPRESS作为描述语言 类型(Type)、实体(Entity)、规则(Rule)、函数(Function)、过程(Procedure) IFC1.0(1997) 、IFC2.0(1999)、IFC2x3(2006) IFC标准是由国际协同工作联盟IAI(International Alliance for Interoperability)发布的建筑产品数据表达标准
类型(Type)
实体(Entity)
实体(Entity)
实体(Entity)
实体(Entity)
实体实例
实体(Entity)
实体实例 哪些是Ifcproperty
IFC文件
BIMserver BIM模型共享平台 开源 Java语言编写 兼容Windows,Apple,Unix,Linux等操作系统 Jar或war安装 实现IFC的上传、解析、存储、查询、下载等; BIMserver在线展示;
源码分析-存储 解析器
源码分析-存储 IFCModel
源码分析-存储 BerkeleyDB Key/Value数据库 数据结构简单 支持多重记录 提供C、C++、Java、Python等接口 http://blog.chinaunix.net/uid-1755993-id-2866409.html
源码分析-存储 Table databaseName = store_ServerSettings databaseName = store_UserSettings databaseName = log_DatabaseCreated databaseName = log_ServerStarted databaseName = geometry_GeometryData databaseName = geometry_GeometryInfo databaseName = ifc2x3tc1_IfcDoor databaseName = ifc2x3tc1_IfcMaterial
源码分析-存储 Key、Value
源码分析-存储 convertObjectToByteArray()
源码分析-存储 写<key,value>--put()
源码分析-查询 Cursor遍历
源码分析-查询 读取记录
源码分析-查询 导出IFCModel
源码分析-查询 查询语句 要有一个property的查询;
源码分析-查询 分词
源码分析-查询 解析
源码分析-查询 解析
源码分析-查询 遍历 …
源码分析-查询 解析
源码分析-查询 遍历 …
BIMserver 局限 需要生成IFCModel 只能实现简单查询 单机存储
后续工作 实现复杂查询 调研可视化过程