It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center




已关闭8年。




产生彼此不重叠的2D小行星(自上而下)的好方法是什么?如果您能以类似于C#或JAVA的任何语言提供代码,我将不胜感激。

最佳答案

我相信您正在寻找的是2D Collision Detection。这是带有工作示例代码的good article

编辑:根据您的描述,如果每个小行星都表示为Rectangle,则只需检查Intersection:

  • 生成一个表示为矩形的小行星。
  • 检查现有小行星列表是否为Intersects
  • 如果相交,请转到1,否则将其添加到列表中。

  • 显然这并不是完美的,因为应该允许重叠一些角,但这将是生成想要的东西的一种相当快捷的方法(取决于要放置的小行星的数量)。

    编辑2:如果只需要检查矩形重叠的代码,则可以找到here

    09-08 10:59