![Autodesk Revit参数化设计之道:Dynamo实战剖析](https://wfqqreader-1252317822.image.myqcloud.com/cover/758/43806758/b_43806758.jpg)
1.8 例题7:应用柱面坐标系绘制螺旋线
1.解题思路
螺旋线的绘制方法有很多种,这里讲解一下柱面坐标系法。
首先,通过数学解析几何中对柱面坐标系的定义来帮助理解Point.ByCylindricalCoordinates(通过柱面坐标系生成点)节点。其次,通过输入不同的数值来测试节点各输入、输出端口的含义以及其能达到的效果。这对以后了解未知节点有很大帮助。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/42_02.jpg?sign=1739428719-nIISt72jvK0jugeXoJkKiXdD6x19Osxh-0-31c087388084e33f524111467a4c40e9)
2.知识点
● 柱面坐标法
● Point. ByCylindricalCoordinates
3.例题详解
在Geometry(几何学)里的Points(点)中,通过观察发现在节点前有三种符号,如图1-70所示,绿色的加号、红色的闪电、蓝色的问号;这些符号将节点大致分为三类:创建类(加号)、修改类(闪电)、查询类(问号)。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/42_03.jpg?sign=1739428719-csLT8WFRW8H0DTQjDvMw4VmQx2g5gXz3-0-6f454209e292926c84ea4e2eb661bb1e)
图1-70
通过三种颜色的符号可以快速查找需要的节点。比如,创建点的方法有很多,接下来要讲的Point.ByCylindricalCoordinates(通过柱面坐标系生成点)节点就是通过柱面坐标系创建点。不过需要注意的是由于英译汉的原因,这里的分类并不是很严谨。
简单的英语单词结合数学解析几何的相关知识,可以更好地理解Point.ByCylindricalCoordinates(通过柱面坐标系生成点)节点各输入端口的含义。鼠标放置在输入端口上,停留两秒,会出现相关提示说明,这也可以帮助用户进一步理解,如图1-71所示。“CS”是对坐标系的处理,可以根据项目需要平移、旋转坐标系,在后续的章节中会进一步讲解。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/43_01.jpg?sign=1739428719-1wibW562ZH7fXOEkoPcJuns6fEUsYI7h-0-f026f6c871bd6923103ce758efe69f36)
图1-71
“angle”(角度)即为柱面坐标方程中的θ,“elevation”(高度)即为z值,“radius”(半径)即为半径r。通过θ的数学含义,可以将0°~360°的一个列表输入“angle”(角度)接口,这样可以生成圆形点阵,如图1-72所示;将圆形点阵接入NurbsCurve.ByPoints(通过点的样条曲线)节点便可快速生成圆形。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/43_02.jpg?sign=1739428719-ttvtLRcKs91CRyMv6maHZWMorhXY9j1d-0-bb746d045eadabbb3fcd34e5e7725f9b)
图1-72
根据例题6的相关知识,要想得到螺旋线,需要把对应圆形点阵中的点依次赋予对应的z值坐标,如图1-73所示。这是一圈度数为360°,螺距为5,半径为2的螺旋线,也可以通过添加数字滑块让螺旋线变化更为灵活(参照例题6的相关知识点)。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/43_03.jpg?sign=1739428719-sTGipAZgaCNdSNsscFb1TsDpbLUpWhUU-0-d2802e0ebd07ebb6f34d446142df6fd1)
图1-73
保存文件为“柱面坐标系螺旋线.dyn”。
练习题:绘制费马螺线(图1-74)
费马螺线表达式为r2=θa2,求解后r=±sqrt(θa2)。
![](https://epubservercos.yuewen.com/8A2F8F/23083818501903406/epubprivate/OEBPS/Images/44_01.jpg?sign=1739428719-TnR7Zi6neMOt5JMPcYTYR5AifiE6IgWa-0-54f3968332ef3f8ba5958e48464edf75)
图1-74