下载app免费领取会员
1、在项目文件中绘制两条模型线作为结构框架放置的基准。
2、调出一个PythonScript节点,对其进行编辑。通过点击节点面板上的加号,将输入端增加至5个。
3、双击PythonScript的节点面板,进入编辑模式。修改以下内容:
3.1 第1行至第10行的内容是引用需要用到的库。
3.2 第13行和第14行是定义节点中的输入端,IN[0]和IN[1]就是节点输入端的IN[0]和IN[1]。IN[0].Curves表示获取该输入端的曲线,由于获取的结果是一个列表,因此通过IN[0].Curves[0]获取列表中索引项为0的元素。crvA和crvB是变量的名称,用来储存输入端装化的结果。
3.3 第17行和第18行的内容也是定义输入端数据,framingType和designLevel分别接入IN[3]和IN[4]。
3.4 第21行是将输出端OUT定义为一个列表。方便后期数据填入。
3.5 从第23行开始创建一个循环。
3.5.1 第23行的for val in IN[2]:表示如果数据存在与输入端IN[2]中。
3.5.2 第25行和第26行是通过节点Curve.PointAtParameter获取指定曲线上参数处的点。参数由变量val控制。
3.5.3 第28行是通过节点Line.ByStartPointEndPoint两两连接步骤3.5.2中的点生成直线。
3.5.4 第30行是通过节点StructuralFraming.BeamByCurve生成结构框架,该节点所需的定位线、定位标高和族类型。
3.5.5 第32行首先是通过beam.Faces获取结构框架的各个曲面,然后通过python中列表的函数append将数据一一填入列表OUT中。
4、为PythonScript准备输入端的数据。
4.1 输入端IN[0]需要曲线,通过节点Select Model Element拾取Revit中的曲线,拾取的结果是模型线。
4.2 输入端IN[1]需要曲线,通过节点Select Model Element拾取Revit中的曲线,拾取的结果是模型线。
4.3 输入端IN[2]需要数值,图中是通过代码块创建了一个从0到1均分为11个对象的数值列表。
4.4 输入端IN[1]需要输入结构框架的族类型,通过节点Structural Framing Types指定。
4.5 输入端IN[1]需要输入具体的标高,通过节点Levels指定。
5、最终的效果就是沿着拾取的两条曲线放置结构框架。
本文版权归腿腿教学网及原创作者所有,未经授权,谢绝转载。
上一篇:Revit如何做一个带盖板的排水沟族(投稿/文/李呈伟)
下一篇:DynamoPrimer解析之Packages - MapToSurface-PanelingWithPolygons(上)