使用Coords获得帆布儿童

时间:2014-05-13 20:34:47

标签: c# wpf canvas

所以我有一个画布元素,里面装满了很多长方形。 现在我试图检查2个矩形的碰撞,所以我试图检查另一个矩形下面是否有一个矩形。

我可以使用foreach循环来检查,但如果有很多矩形,这将是有用的。

感谢。

1 个答案:

答案 0 :(得分:0)

我假设您的rectangles由对象表示。

坏消息:

是的,您必须使用循环来针对每个其他矩形对象对每个矩形对象进行测试。

好消息:

现代浏览器非常快。

首先编写嵌套循环以对所有矩形组合进行命中测试。

如果结果缓慢,请查看本文,其中介绍了如何将画布划分为子部分,以便只需要对子部分中的那些矩形进行相互测试。帖子使用java,但你可以很容易地“看到它在c#中”。

http://gamedevelopment.tutsplus.com/tutorials/quick-tip-use-quadtrees-to-detect-likely-collisions-in-2d-space--gamedev-374