2

我花了一上午的时间试图找到一个简单的函数 (x,y) -> n 可以像这样对补丁进行编号

在此处输入图像描述

我没有成功。大家有什么经验或建议吗?

4

2 回答 2

2

这是我的看法:

patches-own [ n ]

to setup
  clear-all
  resize-world -4 4 -4 4 ; so it looks better, but use any size you like...
  create-turtles 1 [
    set heading 180
    foreach n-values count patches [ ? + 1 ] [
      set n ?
      if [ n = 0 ] of patch-left-and-ahead 90 1 [ left 90 ]
      fd 1
    ]
    die
  ]
  ask patches [ set plabel n ]
end
于 2015-12-10T17:47:48.200 回答
1

有趣的是你应该问我也花了一个上午做同样的事情。有一个函数使用了 floor 函数,但我记得这是 netlogo 所以我让乌龟帮我做。

用这个程序

to spin
 let k 1
  set t t + 1
  repeat 2
  [
   lt 90
   repeat t [fd 1 ask patch-here [set n k set k k + 1]]
  ]
end

和这个代码在启动。

 crt 1 [
    set heading 0
    repeat 41 [spin]
    die
    ]

而且当然

patches-own [n]

按顺序调用它们

foreach sort-on [n] patches ask ? [ "the stuff you want them to do" ]
于 2015-12-10T16:54:46.910 回答