没有。 Line2D周围和上面的组件。我想找到重叠的组件。我尝试了line.getbounds()。intersects(component)但它给出了我不需要的矩形区域组件。而且,距离有时会给我一个非常接近Line但不在线的组件。任何解决方案?
答案 0 :(得分:1)
简短回答:检查这两个条件中是否至少有一个是真的
详细说明: 这些是可能的情况:
只有中间的子弹有点棘手,但是因为你只测试jcomponent,所以生命很简单,因为它们是与轴对齐的矩形。您可以轻松计算组件边界的端点。边界由宽度w和高度h的点(x,y)给出。这给你四个方面:
答案 1 :(得分:0)
如果您正在谈论的组件是java组件,那么它们是矩形的,您可以使用line.intersects(component.getBounds())
如果它们是任何其他形状,则必须定义该形状,并且如果它们不是矩形,则以数学方式使用该线