0 0 0
复杂的Autocad图形你还手动画吗
发布时间:2021/7/25 10:11:51 作者:牛侃BIM 浏览量:987次
内容摘要:

文末彩蛋——是惊喜还是悲哀?

你好!这里是牛侃BIM。


我是彩虹直至黑白L,我们知道Dynamo可以辅助设计做一些有造型的东西,目前的做法是在Dynamo中构件一些异形实体,然后以族的形式导入到Revit中(比如造型及空间关系复杂的桥梁模型),对比Grasshopper,我们可以将其做的造型、幕墙分格的模型bake到Rhino中,保存为DWG模型,从而用于结构分析等用途。



那么如果能实现Dynamo与Autocad、SAP2000等软件的交互,就比较有意义了。今天我们介绍如何将Dynamo图形自动转化到Autocad中,视频演示如下:




案例介绍:我们以一个双曲面面板分格为例,介绍如何将Dynamo图形转化到Autocad中。


首先构建曲面,我们这里采用简单的三个椭圆融合成曲面



使用Lunchbox的节点都曲面进行分格,再将分格线连成多段线:






接下来是最关键的一步,如何将Dynamo图形传输到Autocad:


我们调用了Autodesk.AutoCAD.Interop这个dll文件,我们在安装了Autocad之后会在安装路径下有这个dll(我这里在C盘,朋友们自己查阅此dll文件在我们自己电脑里的位置)




具体代码的意思我已注释说明,如下:


import clrclr.AddReference('ProtoGeometry')from Autodesk.DesignScript.Geometry import *clr.AddReferenceToFileAndPath('C:\\Program Files\\Autodesk\\AutoCAD 2016\\Autodesk.AutoCAD.Interop') ##导入模块,关于AutoCAD.Interop可去搜索引擎搜索from Autodesk.AutoCAD.Interop import *from System import *#定义输出的curvescurves = IN[0]acadApp = AcadApplicationClass()acadApp.Visible = True#让自动打开的CAD显示到前台来,反之=False#遍历dynmao中创建的curvesfor i in curves: p1 = i.StartPoint p2 = i.EndPoint p1cad = Array[float]([p1.X, p1.Y, p1.Z]) p2cad = Array[float]([p2.X, p2.Y, p2.Z]) #创建cad中的线 line = acadApp.ActiveDocument.Database.ModelSpace.AddLine(p1cad, p2cad); acadApp.ZoomExtents();#在打开的cad中让图形在窗口中最大化显示


重点

就在

昨天,我看到了高铁上在宣传BIM

这是?





文章完……
注:图片仅供交流学习使用,严禁用于商业用途。


  • 用户评论