【问题标题】:How do I set up patches randomly in netlogo, BUT not have them touch each other?如何在 netlogo 中随机设置补丁,但不让它们相互接触?
【发布时间】:2018-07-11 01:55:35
【问题描述】:

我正在尝试设置我的补丁,以便它们不会相互接触,而是随机放置。

现在使用下面的代码,他们设置了我想要的比例颜色,但不是随机放置的:

to setup-patches
  ask n-of number-of-patches patches
  [ ifelse neighbors4 = green
    [ set pcolor black ]
    [ set quality (random 10)
    set pcolor scale-color green quality 0 10] ]

关于如何做到这一点的任何帮助?

【问题讨论】:

    标签: installation netlogo patch


    【解决方案1】:

    我认为您需要使用any?shade-of? 原语,让每个补丁检查是否有任何邻居不仅具有绿色,而且具有任何绿色阴影。另请注意,如果您使用random 10 设置质量,则补丁的质量将在0 到9 之间,因为NetLogo 的random 不包括在内。因此,您可能希望稍微不同地缩放您的质量以进行可视化(如下例所示)。

    patches-own [ quality ]
    
    to setup
      ca
      ask n-of 400 patches [ 
        ifelse any? neighbors4 with [ shade-of? pcolor green ] [ 
          set pcolor black 
        ] [ 
          set quality 2 + random 7
          set pcolor scale-color green quality 0 10] 
      ]
      reset-ticks
    end
    

    给你类似的东西:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-08
      • 2015-06-16
      • 1970-01-01
      相关资源
      最近更新 更多