我有一堆Line2D,我需要在单个图形上下文中执行一些计算。例如,我只需要看看哪些相交,哪些重叠等。图形永远不需要显示,只需在后台运行即可。对此最好的方法是什么?在Java中为背景计算创建图形上下文
2
A
回答
1
如果他们永远不需要显示,那么你不需要创建一个图形上下文。只需构造具有所需坐标的Line2D.Double(或Line2D.Float)对象,然后根据需要调用intersectsLine(Line2D)方法。
例如:
Line2D.Double firstLine = new Line2D.Double(0.0, 0.0, 1.0, 1.0);
Line2D.Double secondLine = new Line2D.Double(0.5, 0.0, 0.5, 1.0);
boolean intersectionOccurs = firstLine.intersectsLine(secondLine);
如果我的心智图生成器正在哪个应该intersectionOccurs给予如此。
0
除非图形与某些显示在同一程序中的东西直接相关,否则这可能不是一个好方法。哪些绘图操作是神秘的,未记录的,并且在大多数情况下不能保证从一个环境到另一个环境保持一致 。
例如,数学上相交的两条线可能彼此穿过 而不共享任何像素。绘制三角形可产生几个不连贯的斑点,而不是一个连续的斑点。
相关问题
- 1. 试图在Java中创建计算器
- 2. 创建L形背景
- 3. 在MATLAB上创建PACMAN背景图
- 4. 在BitmapData上绘制形状或创建其图形上下文
- 5. 在Java中修改图形上下文
- 6. 在烟花中创建背景图片
- 7. 如何在android中为背景创建方形按钮?
- 8. 为视图创建纹理背景
- 9. 为View创建图案背景
- 10. Qt错误在几台计算机上创建SSL上下文
- 11. 如何在android中创建背景图片上方的图层?
- 12. 在CSS中创建背景
- 13. 从许多背景图像中创建一个背景图像
- 14. 创建Android背景图片
- 15. 如何创建背景图片并在其上添加文字
- 16. 为背景色创建div
- 17. 为Android应用程序创建背景图像 - Java
- 18. 如何为LinearLayout创建背景,如下图所示
- 19. 在GUI中背景中的JAVA算法
- 20. 如何在动画GIF的背景上创建隐形按钮?
- 21. 背景线程上的沉重计算
- 22. Java - 在背景上的图形故障repaint
- 23. 条形图背景
- 24. 在悬停上创建背景
- 25. 在拼贴背景上创建视差
- 26. 从背景中创建位图
- 27. 在背景图片上居中文字
- 28. 如何在HTML5和CSS3中创建以下图片作为标题背景?
- 29. 创建按钮与圆形背景色的Java
- 30. 在Windows Phone上下载背景图片
你可以在此扩大?我只在这里使用简单的2D几何体,所以我不明白两个Line2D如果相交或重叠可能不共享像素。 – Marty 2012-07-30 18:51:33
单像素宽线形成阶梯图案。构建阶梯不共享像素的相交线很容易。在另一方面,如果线条“胖”而不是单个像素,那么数学上不相交的线可以共享一些像素。 – ddyer 2012-07-30 19:53:21