我正在为Windows开发一个桌面应用程序,它将不断显示地图在车辆移动时移动,从GPS单元获取位置。我写了一个快速的小演示来完成这个,但它不断闪烁。我需要实现一个具有良好平滑运动的解决方案。我有几点想要解决这个问题。
首先,我认为最好以可见窗口大小的2到3倍创建地图,然后将窗口移到地图上。当窗口靠近一侧时,在背景中构建新地图,替换当前地图。我还在研究如何做到这一点。 (提示欢迎!!大声笑)
我认为这将是向前迈出的一大步,也是为应用程序启用硬件加速的最终解决方案。基于我在论坛中阅读的内容,JOGL是向Java桌面应用程序添加硬件加速的唯一实用方法。所以我在这里。
有没有人玩过将JOGL添加到GeoTools。我现在不是在谈论3D,只是让显示效率更高。看起来这将是一个很大的工作来实现这一变化,因为它似乎将影响JMapPane的几乎所有代码。任何建议,代码示例和提示将不胜感激!!!
答案 0 :(得分:1)
您可以使用GLG2D项目使用JogAmp JOGL 2加速硬件来渲染Swing JComponent,例如JMapPane。这将允许您使用硬件加速,只需对GeoTools源进行最少的更改。 http://brandonborkholder.github.io/glg2d/
JComponent renderPane = new JMapPane(...
JFrame frame = new JFrame("My GeoTools application");
frame.setContentPane(new GLG2DCanvas(renderPane));
...