发布于2019-08-07 12:17 阅读(1821) 评论(0) 点赞(1) 收藏(2)
欢迎加入BIM行业开发交流1群 群号:711844216
小伙伴们在使用dynamo中的PythonScript节点时,为了丰富PythonScript节点的功能,那么就需要引入第三方模块。首先,我们得明白,PythonScirpt节点是基于IronPython的,因此模块的导入方式与python是不一样的。本文就介绍如何在IronPython中导入第三方模块。
对于这两大类,三种情况,就用下面的代码进行说明
1.导入IronPython自带模块
import math #导入自身的数学库模块
import clr #导入自身对.net dll引用的功能模块,不管是revit中定义好的模块,还是自定义/第三方模块,都需要先引入这个模块,然后再通过这个模块方法进行导入
2.1导入revit中准备好的模块
import clr #导入自身对.net dll引用的功能模块
# 导入Revit自身的模块 RevitAPI.dll 和 RevitAPIUI.dll
clr.AddReference("RevitAPI") #导入RevitAPI.dll文件,文件后缀.dll可以省略
clr.AddReference("RevitAPIUI")#导入RevitAPIUI.dll文件,文件后缀.dll可以省略
import Autodesk #导入Autodesk命名空间
from Autodesk.Revit.DB import * #再从具体的命名空间下引入模块
from Autodesk.Revit.UI import * #再从具体的命名空间下引入模块
2.2导入自定义模块/第三方模块
import clr #导入自身对.net dll引用的功能模块
import sys #导入系统功能的模块,下面主要用于指定dll路径
sys.path.append(r"dll文件所在的地址") # 指定dll文件所在的地址,前面有r转义字符,直接复制粘贴地址就行
clr.AddReference ("xxx.dll") # 需要导入的dll名称
import xxxNamspace # 导入这个dll文件中,我们需要使用到的函数的命名空间
#上面这些操作的简便写法如下:
import clr
clr.AddReferenceToFileAndPath(r"dll文件所在的地址\xxx.dll")
import xxxNamspace # 导入这个dll文件中,我们需要使用到的函数的命名空间
四、注意事项
1.在IronPython中导入.net下写好的dll与python导入模块是有区别的。
2.对于导入IronPython自身,或者revit写好的模块是不需要指定路径的(IronPython,dynamo已经帮我们做好了)。
3.对于导入自定义/外部模块是需要我们在程序中添加好路径的。
4.如果小伙伴们有需要,笔者会出一个自定义模块的教程。
5.大家好,我是黑夜の骑士,欢迎大家关注我的博客,笔者将持续输出revit二次开发以及编程干货。
作者:343489399
链接:https://www.pythonheidong.com/blog/article/10719/9530deae014f09910c04/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!