我想知道是否有人有一个好主意来过滤他们的视觉和视锥中具有调用龟的计算成本最低的海龟?
现在我正在使用这样的东西:
Member? Caller-Agent agents in-cone 5 100
或者只是谁可以看到我? 我想知道是否有人知道我如何检查某个半径为X的其他代理人的方向是否朝向来电代理?
答案 0 :(得分:1)
所以,这就是我这样做的方式:
我用abs(对自己 - 朝向)< 50
我认为它可能包括角度为100的圆锥,因为它使用绝对值。
这只是一个测试程序,看它是否有效:
ask turtles[set label "" set color green]
ask turtle 7 [
set color red
set label "Caller"
ask other (turtles with [distance myself <= 3 and abs( towards myself - heading) < 50 ])
[
set color yellow
]
ask other turtles [
set label (Member? turtle 7 Other turtles in-cone 3 100)
]
]
并且这个锥体80和abs(朝向我自己 - 朝向)&lt; 40:
此方法存在问题: 如果一个代理与调用者的位置相同,那么我将得到错误,即没有标题定义到同一点或类似的东西!
错误是:从点(7,7)到同一点没有定义标题。龟28跑到TOWARDS时出错
<强> 更新 强>
[(distance myself <= 3 and distance myself > 0 and abs( subtract-headings towards myself heading ) < 60) or distance myself = 0 ]