그것은 반환합니다
false
java.awt.geom.Rectangle2D$Double[x=10.0,y=10.0,w=0.0,h=20.0]
를이 코드 :이 라인은 1 개 픽셀이라고 말을 쓸모
Line2D.Double line2d = new Line2D.Double(10, 10, 10, 30);
Rectangle2D.Double rect2d = new Rectangle2D.Double(0, 0, 100, 100);
boolean intersect = line2d.getBounds2D().intersects(rect2d);
System.out.println(intersect);
System.out.println(line2d.getBounds2D());
있지만,이 Line2D.Double
을 사용하는 다른 방법이 될 수 없기 때문에 . 실제로 Java의 경우이 수직선은 0 픽셀 너비 경계이므로 다른 모양과 결코 교차하지 않습니다. 비 수직 및 비 수평선의 경우 경계가 인 경우 교차합니다. 이 방법은 교차를 계산하는 방법에 대한 자세한 내용은 RectangularShape.intersects() 자바 독을 확인할 수 있습니다
boolean intersect = line2d.intersects(rect2d);
:
직접 모양을 교차를 계산하기 위해 경계를 사용하지만하지 마십시오.
출처
2014-03-26 22:16:31
xav
시도해 보셨습니까? –