Ghpython怎样能输出循环过程,而不是循环的最终结果

ghpython中的循环默认输出最终结果,而不是输出每一次循环的结果,怎样能得到每次循环的结果并输出呢


比如图中的情况,希望a输出端随时间变化依次输出0,1,2,3……

需要定义一个列表来收集需要输出的数据。

1 个赞

定义列表的话是输出列表吗?那怎样能让列表随时间变化呢

你是想做一个计时器刷新数据?

if(reset==False):
    x = 0
else:
    x +=1
a = x

如果不想要 Trigger电池就用委托回调去刷新电池。ScheduleSolution

准备录个视频,把委托回调的方法也补充了一下。这样就不需要Trigger刷新电池了

#1:首先初始化变量
#2:利用Trigger刷新电池
#3:如果不想要Trigger电池,可以使用委托回调来刷新电池

"""
public void ScheduleSolution(
	int delay,
	GH_Document.GH_ScheduleDelegate callback
)
"""
import Grasshopper.Kernel.GH_Document as gd


if(reset==False):
    x = 0
    list = []#初始化一个列表来收集数据
else:
    x+=1
    list.append(x)
    doc = ghenv.Component.OnPingDocument()#获取GH的当前文档
    #这里需要定一个lambda创建函数
    doc.ScheduleSolution(20,gd.GH_ScheduleDelegate(lambda e:ghenv.Component.ExpireSolution(False)))
a = list
3 个赞

太棒了,谢谢老师