NetLogo可以使用锥内或半径内的2个盲点合并代理吗?

时间:2016-06-22 11:10:27

标签: netlogo

许多动物的眼睛位于头部而不是前部。这意味着他们有2个视锥,前后直接有盲点。

有没有办法在NetLogo中对此进行编程?

1 个答案:

答案 0 :(得分:1)

当然,有不同的解决方案来实现这一目标。 一种解决方案是首先识别前盲点中的所有补丁。 然后在第二步中,识别由前盲点贴片和侧视贴片组成的较大锥体中的所有贴片,但仅保留那些 补丁不是前盲点补丁集的成员。

  ask turtles
  [  
    ;; define angles
    let full-angle 260
    let blind-front-angle 70
    let vision-distance 40

    let blind-front patches in-cone vision-distance blind-front-angle  
    let vision patches in-cone vision-distance full-angle with [not member? self blind-front]

    ask vision [set pcolor red]
  ]

在代码示例中,full-angle parameter用于间接定义背面盲点的大小,即360度 - 全角度。 blind-front-angle参数直接定义了前方盲点的大小。