.NET 开源软件开发BIM工具包xBIM
一、xBIM 简介
BIM(Building Information Modelling)建筑信息模型,xBIM(eXtensible Building Information Modelling)可扩展的建筑信息模型。它是一个.NET 开源软件开发BIM工具包,支持BuildingSmart数据模型(又名工业基础类IFC)
xBIM允许.NET开发人员以IFC格式读取,创建和查看建筑信息(BIM)模型。完全支持几何,拓扑操作和可视化。此外,xBIM支持IFC和COBie格式(BIM设施资产信息交换标准)之间的双向转换。用于数据操作的核心库都是用C#编写的,几何引擎的核心是用C ++编写的。
xBIM目前最新版本为4.0,发布在GitHub。
xBIM提供了丰富的API到IFC数据标准。它允许开发人员在几行代码中读取,写入和更新IFC文件。xBIM是一个.NET工具包,因此开发人员可以构建从简单的命令行应用程序到Windows应用程序和Web服务扩展的所有内容。这方面的一个例子是:商业BIM工具(如Autodesk Revit)的“插件”。
xBIM具有完整的几何引擎,可将IFC几何数据对象(例如IfcSweptAreaSolid)转换为功能完备的边界表示(Brep)几何模型。这些模型支持所有布尔运算,剪切,交集,并集,切片以及计算行为,如体积,面积,长度。几何引擎还提供优化的3D三角剖分和网格划分,以实现可视化以及整个模型优化,例如重复识别和转换为地图。
3.0版还包括一个基于WebGL的新浏览器,我们从实现以前版本的WebGL和OpenGL中吸取了许多教训而且这个更快,更准确并且经过调整以克服在互联网上传输大型模型的问题。感谢MartinČerný在这里所做的巨大努力。
二、xBIM 核心库
两个核心库xBIM Essentials和xBIM Geometry将用于创建复杂的应用程序,xBIM Team页面下的其他存储库包含许多示例应用程序以演示其功能:
xBIM Xplorer - 一个Windows WPF示例应用程序,可以打开和呈现3D IFC模型(和本机xBIM模型)以及显示语义数据。
xBIM WebUI - 一个Web应用程序,可以打开和呈现由xBIM处理的 3D模型。
xBIM Utilities - 一组用于在IFC文件上执行批量函数的示例控制台应用程序。
xBIM Exchange - 包含库和示例应用程序的项目,演示了与COBie一起使用的各种方法。这包括Xbim.Cobie其表示COBIE模型中,电子表格视图执行的CobieLite, Xbim.CobieLiteUK其是由CobieLite但启发XML模型更加严格和存储器高效和CobieExpress作为表示COBIE基于EXPRESS模型。XbimExchange包含IFC与COBie的各种实现之间的转换的示例代码。
xBIM Samples - 一个示例控制台应用程序,演示如何使用xBIM进行简单的IFC创建和其他任务。
请注意:提供除xBIM WebUI之外的所有应用程序都是为了演示如何使用xBIM库,它们不适用于不受控制的生产环境。
架构图
三、xBIM Visual Studio配置
如果使用Visual Studio 2015+,请添加以下包源:
https://www.myget.org/F/xbim-develop/api/v3/index.json
https://www.myget.org/F/xbim-master/api/v3/index.json
如果使用Visual Studio 2013+,请添加以下包源:
https://www.myget.org/F/xbim-develop/api/v2
https://www.myget.org/F/xbim-master/api/v2
四、示例源码
获取项目源代码 xBIM WindowUI https://github.com/xBimTeam/XbimWindowsUI.git 。获取代码后编译运行
.NET 开源软件开发BIM工具包xBIM相关推荐
- 从开源软件开发中体会到的心得
Mitchell Hashimoto 是一名开源软件工程师.由他托管到 GitHub 上的 开源项目 Vagrant,是一个用于创建和部署虚拟化开发环境的工具.近日,Mitchell撰文讲述了在开发 ...
- 想做开源软件开发谁能带一下呀
2019独角兽企业重金招聘Python工程师标准>>> 想做开源软件开发谁能带一下呀 转载于:https://my.oschina.net/u/200898/blog/130024
- 《开源软件开发导论》作业1
关于开源的五个问题 作业要求 五个问题 1.开源的三个阶段具体含义是什么? 2.开源的版权如何使用? 3.一个开源项目如何得以正常运行? 4.开源如何保证安全? 5.对我们学生来说开源应该算什么? 作 ...
- 全球最大开源软件开发平台和仓库
Find, Create, and Publish Open Source software for free SourceForge.net,又称SF.net,是开源软件开发者进行开发管理的集中式场 ...
- 开源软件开发导论第三次作业——openKylin RISC-V系统启动优化 proposal
这个作业属于这个课程:https://gitcode.net/csdn/intro-ossd/ 这个课程<开源软件开发导论> 的课程计划在这里: plan/0.md · master · ...
- CSDN与北航联合推出《开源软件开发导论》实践课程,助力高校开源人才培养
近年来,我国开源创新得到长足发展,初步具备了在国际开源软件生态中自主发展的能力.2021年3月,开源首次被列入"十四五"规划和2035年远景目标,企业纷纷拥抱开源,社会各界对开源技 ...
- 开源软件开发导论第一次作业
这个作业的要求是:第一次作业 (看开源的资料,提五个问题) 在阅读了<2022中国开源发展蓝皮书>后,我对开源产生了几个相关问题. 1. 对于开发者而言,开源当前还存在一定的挑战.68%的 ...
- 【开源软件开发导论作业-1】
这个作业的要求是: https://bbs.csdn.net/topics/607938212 阅读了<中国开源发展蓝皮书>的部分内容后,结合我自己的经验,我提出了以下疑问 1 " ...
- 开源软件开发导论第一次作业——针对开源的五个问题
这个作业的要求是: https://bbs.csdn.net/topics/607938212 在阅读了<2022中国开源发展蓝皮书>后,我产生了如下的几个问题. 许多热门项目的责任方都因 ...
最新文章
- 白盒测试实践-任务完成
- .net导出Excel
- android 官方DrawerLayout的介绍和使用
- 明日方舟抽卡模拟器wiki_明日方舟兑换码地址官服介绍 官服兑换码地址
- createinstance.java,weex android 0.17.0 createInstance fail
- [Python从零到壹] 十四.机器学习之分类算法五万字总结全网首发(决策树、KNN、SVM、分类对比实验)
- scrcpy投屏_scrcpy 使用教程:将安卓设备投屏到 PC 端
- eclipse复制代码连接数据库404_推荐一款免费的数据库管理工具,比Navicat还要好用,功能还很强大...
- jquery 设置style:display 其实很方便的哦
- nginx启动只有master没有worker_深入探索Nginx工作原理
- usb设备的probe全过程
- redis启动以及开机自启动
- C++ 链表结构的常用操作(单链表)
- MatCaffe问题: make matcaffe 'matlab/+caffe/private/caffe_.mexa64' failed
- 图论及其应用 2012年 期末考试答案总结
- 每日英语阅读(五十四)
- ISelectionMgr Interface
- jQuery02(达)
- 服务器443端口响应代码,使用443端口远程服务器
- u-boot使用bootargs给内核传参数
热门文章
- php html 伪静态,php 伪静态(url重写)的写法
- hey 安装_如何在助理扬声器上调整“ Hey Google”的灵敏度
- 第一季度ADC市场份额揭榜 A10 Networks再获用户青睐
- 没有人会觉得正则表达式难写
- ISE14.7兼容性问题集锦
- Win10用户远超4亿 Win10 RS2明年年初发布
- 2.页面布局示例笔记
- 【POJ】【最小生成树】1789 Truck History
- VS.NET调试问题
- 6大奖项!首届 .NET 黑客松大赛圆满收官!