gpt4 book ai didi

c++ - 想要识别两个圆盘是否相互接触

转载 作者:行者123 更新时间:2023-11-30 19:21:38 26 4
gpt4 key购买 nike

我有两张光盘,可以借助键盘单独移动。两张光盘代表两个玩家,我想编码:

  1. 如果disc1接触disc2,那么disc2的大小会减小一点
  2. 两张光盘都不应脱离屏幕

最佳答案

鉴于它们是光盘,碰撞检测实际上相当简单明了。给定半径为 R1 和 R2 的两个圆盘,如果两个物体中心之间的距离小于或等于 R1 +R2,然后它们相撞了。

您可以使用毕达哥拉斯定理计算两个中心点之间的距离:距离等于 delta X 平方和 delta Y 平方之和的平方根。

如果您经常这样做,您可能希望避免使用平方根。幸运的是,这非常简单:计算两个半径之和的平方,并将其与 delta X 和 delta Y 的平方和进行比较。

关于c++ - 想要识别两个圆盘是否相互接触,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19523091/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com