微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何同时移动海龟以及如何避免海龟碰撞?

如何解决如何同时移动海龟以及如何避免海龟碰撞?

我正在尝试使用乌龟表示道路交叉口。为此,我需要同时从不同方向移动车辆(海龟)。我发现可以使用 ontimer() 方法,但在我的情况下似乎不起作用。这是代码

  dist_1 = random.randint(5,15)
  length_1 = 0
  while length_1<1:  
    for i in range(3):
      for j in range(3):
        vehicles_1[i][j].speed(0)
        vehicles_1[i][j].forward(dist_1)
        length_1 = vehicles_1[i][j].xcor()

  time.sleep(5)
  while length_1<200:  
    for i in range(3):
      for j in range(3):
        vehicles_1[i][j].forward(dist_1)
        length_1 = vehicles_1[i][j].xcor()
  screen.ontimer(Moving_vehicles_1,100)

def Moving_vehicles_2(vehicles_2):
  dist_2 = random.randint(5,15)
  length_2 = 0
  while length_2>80:  
    for i in range(3):
      for j in range(3):
        vehicles_2[i][j].speed(0)
        vehicles_2[i][j].forward(dist_2)
        length_2 = vehicles_2[i][j].ycor()

  time.sleep(5)
  while length_2>-150:  
    for i in range(3):
      for j in range(3):
        vehicles_2[i][j].forward(dist_2)
        length_2 = vehicles_2[i][j].ycor()
  screen.ontimer(Moving_vehicles_2,100)

所以基本上我正在创建两组车辆。他们应该移动一定距离并停止一段时间,然后他们应该再次开始移动。这应该同时发生。

我还需要避免海龟的碰撞。如果你怎么做,请提及。

请提供您知道的任何解决方案或源链接。提前致谢。

编辑 1:我知道 Netlogo 可用于避免冲突,但实际上我不知道如何导入和使用它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。