大数跨境
0
0

基建BIM课堂 | 工程人也能入门的编程-IronPython in dynamo&Revit

基建BIM课堂 | 工程人也能入门的编程-IronPython in dynamo&Revit 鲁班软件
2021-09-13
0
导读:什么是IronPython?
前面看到有热心作者分享了dynamo在市政领域应用的小知识,同样作为一个被这款程序支配的建模boy,留下了激动的泪水,仿佛黑暗中看到了黎明的曙光,于是决定将建模过程中遇到的问题拿来和各位小伙伴一起掰扯掰扯:

情景一、高手的节点,就像星空,你看的见却看不懂


输入节点就有十几个,整个程序代码块近百个。我是谁,我在哪?

情景二、构件消失之术


程序运行覆盖前一次指令,之前放置的模型被覆盖。前面的兄弟,你去哪了?

情景三、特殊的数据处理如何实现


不知道这些场景使用dynamo的你是否遇到过,我作为一名不懂编程小菜鸡确实被这些场景搞到抓狂,于是便通过自学掌握了一些基本编程的方法来解决这些问题,后面会专门分享来讲下dynamo 中Python应用,今天就先做一个简单的介绍。

首先,什么是IronPython???

图片来源于网络
这是百度来的定义,翻译下来就是:

编程语言是通用的,但它们总是被部署用于特定的任务;也许您正在构建网站的 UI 或管理数百个数据库。此上下文将始终确定对任何给定任务而言哪些功能是重要的,哪些功能不重要。

Python有几个流行的实现,它们是为特定目的而构建的:IronPython 是 Dynamo 使用的 Python 语言的实现。

说人话就是:IronPython,其实就是Python的方言版本,(就比如你在湖北,武汉人说武汉话,武汉周边的人说的话其实和武汉话差不多,但是也有些区别,武汉人都能听得懂,并不影响你和他沟通。)以更好的满足特定的技术和使用需求,是专门针对.net架构的库设计。

我知道说到这没接触过编程的同学就肯定又蒙了,啥是.net架构,简单来说就是一个平台,Windows系统下的很多应用是基于他构建的,举个例子,我们经常在使用dynamo的时候用到导入导出表格,能这么玩就是这个原因啦。


Dynamo与IronPython的关系
要搞清楚这个那么我们得先了解什么是dynamo,那么对于已经有一定使用dynamo经验的人来说,其实很清楚它是一门可视化编程软件,以直观的图形编程界面来适应设计师和建模人员的思维,但是牺牲了其编程固有的速度和其他功能。

那么IronPython的出现就很好了弥补了这一点,我们可以通过内嵌在dynamo里面的Python Script来实现Python和dynamo的结合使用来弥补单纯依靠可视化编程的劣势。

IronPython in dynamo & Revit的具体优势

速度:脚本的运行速度比自带节点等效且快很多倍。对于更复杂程序和操作处理大批量数据,感觉会特别明显。

简洁:单个 Python 脚本节点替换数百个自带节点,可以使你更加专注于流程设计,而不是去连接一个个节点。

范围性:Python 库可用于访问 Web API、强大的库和其他本地软件(例如 Excel、Chrome 等)。【注:由于IronPython研发初衷,对于Python本身支持流行的库如:numpy等无法构建】

对 API 的完全访问:Revit大多数 API 功能不以节点形式存在dynamo,使用IronPython可以让你不经过二次开发,就能通过编写自己的脚本直接访问。

编程功能:使用可视化编程无法描绘的关键编程范式,例如:循环、复杂的条件分支和递归等。

篇幅不够啦,本期就做个引子,下一期我们专门来聊一下Python的应用方法,敬请期待。


BIM合作咨询:

400-921-8880  15026656977

欢迎加入[建造阶段BIM应用] 行业交流QQ群 276740618

为方便本群管理,加群请备注姓名单位


了解更多

鲁班开发者平台 —MOTOR简介

鲁班BIM新品推荐|鲁班建设企业运营指挥中心

鲁班BIM新品推荐|鲁班工场(Luban iWorks)

【声明】内容源于网络
0
0
鲁班软件
鲁班软件官微。鲁班软件作为基于BIM的数字孪生技术服务商,以建设1:1数字世界为使命,致力于打造用户喜欢的一流产品。官网:www.luban.cn
内容 1539
粉丝 0
鲁班软件 鲁班软件官微。鲁班软件作为基于BIM的数字孪生技术服务商,以建设1:1数字世界为使命,致力于打造用户喜欢的一流产品。官网:www.luban.cn
总阅读1.0k
粉丝0
内容1.5k