我想写到我有视野的地方锥角对于乌龟。
我通过视锥旋转乌龟。
因此,首先它朝向视锥的起点,并以 0.05 度的增量变化,直到到达视锥的终点
let max-head heading + (cone-angle / 2)
set heading subtract-headings heading (zero-dash / 2)
while[(subtract-headings heading max-head ) < 0]
[
set heading heading + .05
;wait 0.1
]
我写的上面的代码不正确。但我找不到错误。
我认为您的部分困难在于使用减法标题。这会找到两个标题之间的最短角度的大小,但这不是您想要的视锥(可能很宽)。由于您的代码是顺时针旋转的,因此我假设您想从最逆时针的点开始并旋转。唯一的困难是,如果航向经过 360 度,那么您需要将圆锥扫描计数器和实际航向分开,并使用 mod 算术从计数器进行转换。
globals
[ cone-angle]
to setup
clear-all
create-turtles 1
set cone-angle 25
end
to go
ask turtles
[ let max-head heading + (cone-angle / 2)
let fake-head heading - (cone-angle / 2)
while [fake-head < max-head]
[ print fake-head
set fake-head fake-head + 1
set heading fake-head mod 360
wait 0.1
]
]
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)