可以使用Line2D和Rectangle2D而不生成图形吗?

时间:2017-04-25 10:51:17

标签: java

这里的Java学生

我正在尝试创建一条在移动物理加速度计/陀螺仪时移动的线,以及当线与我在2D坐标系中定位的矩形相交时返回TRUE的方法。

显然,Line2D和Rectangle2D是我刚刚发现的图形类,除非它在JFrame中设置并绘制,我不会寻找它。所以我想知道是否还有其他类可能更适合这个。或者我是否必须手动总是计算线段的方程,以及矩形段的四边并检查那个交叉点?

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

这些类只封装了形状信息。您可以完美地使用它们而无需渲染,甚至可以在“无头”(无渲染硬件)环境中使用它们。

Line2D line = new Line2D.Double(1, 5, 4, 0);
Rectangle2D rect = new Rectangle2D.Double(1, 1, 2, 2);
System.out.println(line.intersects(rect));

输出“true”。