【发布时间】:2009-02-22 00:26:40
【问题描述】:
我有一个画布作为画布,上面绘制了几个形状,其中一些是三角形、圆形、矩形,但都包含在它们自己的边界分隔矩形内。
“圆将在一个矩形内”
我在棋盘上放了两个圆 A、B,其中 A 位于 B 上方并且有一些区域发生碰撞。 如果我单击与容器框相对应的 A 区域,但不是实际的 A 圆形区域,我不会选择 A 圆圈,但这会阻止我选择 B,因为我的 A 容器重叠并且超过 B 一个。
在事件基础框架中,我猜子事件将转到父事件而不是兄弟事件。
所以我的选择是检查所有形状容器,这些容器在点 x 处具有按 z 索引排序的一些区域。然后为每个容器检查其内部的形状是否发生碰撞。
看起来效率不高但是有没有其他方法?
---------
| --------
| | |
-----| |
--------
【问题讨论】:
标签: algorithm events graphics shapes