要做强大的BIM工程师除了建模外,这些编程语言要学习

从事BIM的研究工作快三年了,专业背景是土木工程,从建模到编程,从几何三维到数据,再到系统平台,都会经历一段痛苦的学习编程的时间,大概经历完这段时间就会发生一个质的变化,对BIM的…

从事BIM的研究工作快三年了,专业背景是土木工程,从建模到编程,从几何三维到数据,再到系统平台,都会经历一段痛苦的学习编程的时间,大概经历完这段时间就会发生一个质的变化,对BIM的认知也会发生翻天覆地的变化,至少感觉到BIM做为建筑信息化的实现途径,应该往哪方去发展,真正的局限在哪里。
我相信绝大部分BIMer都和我一样,专业背景是土木工程,限于工作或者学习环境,没有机会深入学习建筑信息化,很可能从事一些翻模和模型的简单应用工作,每次听闻BIM大佬的言论,应用点,心里除了“卧槽,牛逼”之外,也会想这到底怎么实现的呢?看起来不难啊,还有什么软件我不知道吗?
且行且珍惜,听作者表达一下自己的观点,建筑信息化的实现,绝不是几款软件能够实现的,软件只能包装一部分面试特定人群的功能,只有自己掌握核心技能—编程,才能脱离软件的限制,做出适用于自己项目,甚至自己单位的平台功能。
所以,引出今天的主题,一个BIMer应该学习几门编程语言呢?
答案:C#,Python,网页。
如果时间充裕,建议Python,C#,网页。
如果想快速投入生成工作,建议C#,Python,网页可不学。
下面分别说说各自的应用点。
Python是一门解释性语言,同时也是我个人最喜欢的需要,语法简洁,大大降低了计算机语言的门槛,对于没有编程经验的BIMBIMer来说,无疑是最好的入门语言。近年来有无数的包针对于Python开发,不乏各种大厂。
(1)Dynamo是基于Python来写得,学习了Python可以更好的理解Dynamo节点,同时Python支持Dynamo的自定义节点。
(2)Python也是Revit二次开发语言之一,虽然不是主流的Revit开发语言,但是Python以其简洁性,也吸引了一部分的用户。
(3)使用Python处理日常事务,我真的认识不少人用Python来处理Excel数据的大只,妥妥的提高工作效率,还有几个是文科生。
(4)超图(supermap)做GIS的,也支持Python的接口。
(5)IFC都耳熟能详,Python也可以把IFC文件作为数据库来获取其中的信息。
(6)作为一个系统平台的后台程序,也可以打开新天地。
(7)之前我做过的使用Python来获取数据库中BIM模型信息,并做一些简单应用的案例也算得上一个应用。
(8)机器学习,人工智能最近几年火的一塌糊涂,如果你没有自己写算法的能力,不妨试试Python的机器学习包和大数据框架,土木工程信息化也需要机器学习。
2. C#
这是一门想对C来说比较简洁的语言,是一个BIMer必须掌握的需要,可谓是万金油,虽然赶不上JAVA,但是做BIM的二次开发,很多时候就是用的微软的编译软件,windows电脑的操作系统就是C#。
(1)Revit二次开发,主流语言,不多讲。
(2)IFC开发,通过XBIM对IFC进行二次开发,这可比Python开发IFC强多了。
(3)快速搭建平台,C#的WPF和winform可谓是神器。
(4)前几期讲的Forge开发也可以用C#来做,想不到吧。
3. 网页
在我的理解里面网页包括HTML,JavaScript和CSS,HTML作为超文本语言专注于网页布局,JavaScript作为脚本语言专注于功能,CSS是网页样式,主要用于基于B/S系统平台开发,可能应用在建造过程的各个方面。
(1)之前几期讲到的node.js,就一直是用的JavaScript语言,作用就是创建一个服务。
(2)同样的,前几期的界面有一个HTML文件和css文件,就是用HTML和CSS布局,javasJavaScript 是基础功能和拓展功能的功能语言。
(3)类似于之前讲到的Forge,很多的浏览器端的三维模型都是基于three. js来进行开发的,而three. js是用JavaScript写的,换句话说想要做浏览器端的三维模型就逃不过HTML。
编程的语言还有很多,可以做的事情也很多,合理的学习一些编程语言可以提高自己对BIM或者建筑信息化的理解能力和应用能力。

作者: lixin5018

为您推荐

联系我们

联系我们

4008888888

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部