2016-02-16 34 views
0

我把netlogo网格划分为4个部分,并给区域唯一的ID。海龟随机放置。现在我想检查两个龟是否出现在同一部分。如果他们确实分开了他们。如果条件检查两只乌龟是否在同一区域,我会陷入如何编写。任何帮助将非常感激。在此先感谢Netlogo如何计算在同一地区的海龟

+0

你已经试过的东西是什么?如果你分享代码,那么有人可以帮助你。 – Joyson

+0

以下是一些可帮助您入门的信息。之后,你需要尝试一下,如果你被卡住了,那么请遵循joyson的建议。网格(视图)分为多个补丁。每个补丁有一个叫做“pxcor”和“pycor”的x和y坐标。每只乌龟都有坐标,称为“xcor”和“ycor”。找出定义您的四个区域的补丁坐标范围。然后让你的海龟做一个计算,告诉你它们在哪个补丁。然后检查龟是否在同一个补丁中。 – Mars

+0

是一个补丁变量? – JenB

回答

2

海龟可以直接访问其补丁的属性。

;demo 
patches-own [section] 

to setup 
    ca 
    ask patches [set section one-of [0 1 2 3]] 
    crt 200 [setxy random-xcor random-ycor] 
end 

to-report test [#t1 #t2] 
    report ([section] of #t1 = [section] of #t2) 
end 
+0

但是如果我们在程序中有数百或数千只乌龟,那么上面的代码需要很多时间才能执行(因为它必须首先通过订单对来检查它们是否是否在同一部分) – user2293224

+0

如果此答案不适用于您,请更好地描述问题。如果你有成千上万只海龟,除非你有比海龟更多的补丁,否则你如何分离出同一个补丁上的所有海龟。你说你有四个部分 - 所以看起来你只有四个乌龟。 – JenB

相关问题