在Netlogo中列出从海龟到补丁的距离



我试图让被称为" moqs "的海龟在它们的特定半径范围内创建到补丁的距离列表,以便我最终可以在概率函数中使用该信息。然而,我似乎不能弄清楚距离的部分。首先,我创建了一个名为"nearby"的变量,用于标识代理集半径内的补丁。接下来,我创建x和y坐标的列表。我的最新方法是尝试创建一个名为"dist"的列表,该列表要求代理集中的补丁打印出它们与海龟("self")位置的距离。下面的代码给了我"预期的记者"错误,我不知道为什么。我也尝试过各种各样的东西,比如使用距离命令的x和y坐标列表,但我似乎无法让它工作。有什么建议吗?

谢谢,丹

ask mosqs [ 
let nearby patch-set patches in-radius 2 
let xs [pxcor] of nearby  
let ys [pycor] of nearby 
let dist (list (ask nearby[ print distance self]))

应该可以:

ask mosqs [
  let nearby patches in-radius 2
  let dist [distance myself] of nearby
]

注意patches in-radius 2已经是一个补丁集,所以你不需要在它上面调用patch-set

注意使用myself来引用调用的海龟。(distance self不可能是正确的,因为distance self总是0)

我觉得没有必要在这里使用pxcorpycor

最新更新