use*_*085 14 java geometry rectangles
嘿,我正在编写一个快速程序,遇到需要使用圆圈进行碰撞检测的地方.但据我所知,只有Rectangle类具有.intersects(Point p)方法.有什么像我可以用同样方式使用的圆圈吗?
In *_*ico 17
Ellipse2D在java.awt.geom包中调用了一个可以使用的类,因为它有一些看起来像你正在寻找的方法.宽度等于其高度的椭圆是圆形.
其中一个重载contains允许您测试圆点碰撞:
Run Code Online (Sandbox Code Playgroud)boolean contains(double x, double y)测试指定坐标是否在边界内
Shape,如内部性 定义所述.
另一个调用函数intersects允许您测试圆矩形碰撞:
Run Code Online (Sandbox Code Playgroud)boolean intersects(double x, double y, double w, double h)测试内部是否与
Shape指定矩形区域的内部相交.
注意,这Ellipse2D是一个抽象类; 您会使用其嵌套的子类中的一个Ellipse2D.Double或Ellipse2D.Float,唯一的区别是用于存储的尺寸的数据类型.