NetLogo:将特定百分比的补丁更改为某种颜色

时间:2014-04-10 00:09:03

标签: netlogo

我想创建一个具有三种不同补丁颜色的环境。在界面上,我希望能够有三个滑块,允许我控制创建的每个补丁颜色的百分比。我该怎么做?

1 个答案:

答案 0 :(得分:0)

假设您有三个名为slider1,slider2和slider3的滑块,此代码将执行我认为您要求的内容:

to color-patches 
  let total slider1 + slider2 + slider3
  let p-red   slider1 / total
  let p-green slider2 / total
  let p-blue  slider3 / total

  ask patches [
    let x random-float 1.0
    if x <= p-red + p-green + p-blue [set pcolor blue]
    if x <= p-red + p-green [set pcolor green]
    if x <= p-red [set pcolor red]
  ]
end

如果所有滑块具有相同的范围(例如,0到100),则红色,绿色和蓝色的量将与所有三个滑块的相对位置成比例。如果所有滑块都设置为相同的值,则每种颜色约为1/3。当然我们在这里使用随机数,因此可能会得到奇怪的结果。