我在墙壁和障碍物之间封闭了海龟,并希望它们移动到特定的目标位置。每个蜱我只转发特定量的龟。我如何实现这一点来改变龟头? 解释更多
在上图中: 1.在开始时考虑盒子内的所有海龟 你想要乌龟到达上面的目标点,(目前图中的乌龟存在) 3.你有障碍物,墙壁之间有1个开口,即图中的矩形与间隙。海龟只能通过这个差距。 我怎么试 我使用facexy让乌龟面向目标点并在与墙碰撞后反弹但是这样做时盒子左右两侧的乌龟与墙壁保持碰撞,因为每次碰撞后他们再次从facexy方向射出
请帮忙。提前谢谢。
答案 0 :(得分:1)
一个简单的解决方法(根据我读到的关于使海龟反弹的内容)。
random-number是1到10之间的随机数(?)。
`If COLLISION: `
如果他们在左侧制作他们facexy goal-xcor + random-number goal-ycor
facexy goal-xcor - random-number goal-ycor
如果没有任何碰撞,则意味着他们以正确的方式进行,他们应该继续朝目标方向前进。
每当你让它们转过来facexy goal-xcor goal-ycor
时,这一点非常重要。更清楚:伪代码:
1 setup-turtles-inside-box
loop:
2 ask all turtles to face goal.
3 ask all turtles to go forward.
4 if collision
5 if turtle-in-left
6 ask turtle to face goal-xcor + random-number goal-ycor
else
ask turtle to face goal-xcor - random-number goal-ycor
7 loop until all turtles are in goal.
让我们知道任何疑问!