报告NetLogo中海龟头部的变化

报告NetLogo中海龟头部的变化,netlogo,Netlogo,我需要同时学习海龟改变头部的动作。也就是说,当海龟改变方向时,一个过程或一个报告器将改变布尔值。但是这个记者不会被任何其他程序调用,它会在乌龟移动时一直运行(检查乌龟的头部)。在NetLogo中有什么方法可以做到这一点吗?我认为,通过一个“永远”按钮,您可以实现与您想要的类似的效果:即,一个不断运行程序的按钮。(人们通常在模型中至少有一个这样的按钮,通常称为“go”。) 假设要跟踪的标题是0,则可以使用如下代码: globals [ current-heading heading-has

我需要同时学习海龟改变头部的动作。也就是说,当海龟改变方向时,一个过程或一个报告器将改变布尔值。但是这个记者不会被任何其他程序调用,它会在乌龟移动时一直运行(检查乌龟的头部)。在NetLogo中有什么方法可以做到这一点吗?

我认为,通过一个“永远”按钮,您可以实现与您想要的类似的效果:即,一个不断运行程序的按钮。(人们通常在模型中至少有一个这样的按钮,通常称为“go”。)

假设要跟踪的标题是
0
,则可以使用如下代码:

globals [
  current-heading
  heading-has-changed
]

to check-heading-changes
  if [ heading ] of turtle 0 != current-heading [
    set heading-has-changed true
    set current-heading [ heading ] of turtle 0
  ]
end
要使
检查标题更改
代码持续运行,只需从“永远”按钮调用它:


要启动监控时,必须记住单击“永久”按钮。现在,当然,上面的代码还假设您将运行一些其他程序来控制海龟,并且当
标题更改时,这些程序将实际执行某些操作(并重置变量)
变为
true

我认为您可以通过“永远”按钮实现类似于您想要的功能:即,持续运行程序的按钮。(人们通常在模型中至少有一个这样的按钮,通常称为“go”。)

假设要跟踪的标题是
0
,则可以使用如下代码:

globals [
  current-heading
  heading-has-changed
]

to check-heading-changes
  if [ heading ] of turtle 0 != current-heading [
    set heading-has-changed true
    set current-heading [ heading ] of turtle 0
  ]
end
要使
检查标题更改
代码持续运行,只需从“永远”按钮调用它:

要启动监控时,必须记住单击“永久”按钮。当然,上面的代码还假设您将运行一些其他程序来控制海龟,并且当
标题发生更改时,这些程序将实际执行某些操作(并重置变量)
变为
true

在回答时回答