【Dynamo】AnyCAD使用Dynamo绘制三维模型(二)——生成序列和范围的几种方式
说明:
- Dynamo为开源项目,开源地址:https://github.com/DynamoDS/Dynamo.git
- 本文章使用版本:v3.0.3
范围
使用Range节点
start和end分别表示范围的边界,step表示步长。如下为[1,10]范围内步长为2结果
使用Code Block节点
在Code Block填写如下形式的代码
beginning..end..step-size;
1..10..2;
在范围内均匀生成指定个数的列表
使用形如如下代码,指示两者之间均匀分布多个值
beginning..end..#ofSteps;
1..16..#4;
使用Python脚本节点
可以编写python脚本代码来生成我们需要的列表,双击“Python Script”节点,开始编写代码。节点的“IN[index]”代表输入参数,OUT表示输出结果
其中Python Script的脚本如下:
import sys
start = IN[0]
end = IN[1]
step = IN[2]
result = list(range(start, end, step))
OUT = result
序列
使用Sequence节点
start表示序列的起点,step表示步长,amount表示生成序列的长度(数量)
使用Code Block节点
使用形如如下的代码来生成,“#”来指明我们希望列表中包含多少个值
beginning..#ofSteps..step-size
1..#5..2;
使用Python脚本节点
同理
应用举例
如下使用python脚本生成所需的列表,脚本如下:
import sys
dataEnteringNode = IN
start = IN[0]
end = IN[1]
step = IN[2]
a = list(range(start, end, step))
b = list(range(start + 1, end + 1, step))
res = [a, b]
OUT = res
使用list[0]和list[1]分别获取a和b的值,这里还使用内置函数“List.Count”统计列表的长度,列表的值用于确定三维模型的坐标位置和长度
最终在AnyCAD中显示生成的三维模型如下
参考
- https://primer2.dynamobim.org/v/zh-cn/8_coding_in_dynamo/8-1_code-blocks-and-design-script/3-shorthand
- Releases · DynamoDS/Dynamo (github.com)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!