如何查找給定的Rectangle
中的任意點是否在Polygon
之內?矩形在多邊形內嗎?
我曾嘗試:
final Point p = new Point(rect.x, rect.y);
return polygon.contains(p);
這一半的作品。只有當矩形的左上角在多邊形中時才返回true(是的,我知道爲什麼)。
有沒有一種方法來檢查是否有矩形的點是在多邊形?
在此先感謝!
如何查找給定的Rectangle
中的任意點是否在Polygon
之內?矩形在多邊形內嗎?
我曾嘗試:
final Point p = new Point(rect.x, rect.y);
return polygon.contains(p);
這一半的作品。只有當矩形的左上角在多邊形中時才返回true(是的,我知道爲什麼)。
有沒有一種方法來檢查是否有矩形的點是在多邊形?
在此先感謝!
我發現做到這一點的最好辦法:
return polygon.intersects(rect);
包含第一次使用相交,然後使用隧道(看執行),有可能包含的情況會更好,值得深入檢查。 – 2012-01-18 12:33:24
@ BenvanGompel謝謝,不知何故錯過了 – 2012-01-18 12:20:23
這個效果更好,但沒有檢查所有的點。它僅僅只檢查矩形的身邊... – Confiqure 2012-01-18 12:21:12
@ JavaCoder-1337文件說,'如果Shape內部完全包含Rectangle2D' – 2012-01-18 12:23:42
你試過[polygon.intersects(RECT )](http://docs.oracle.com/javase/6/docs/api/java/awt/Polygon.html#intersects(java.awt.geom.Rectangle2D中))? – user1097489 2012-01-18 12:09:39