Java swing桌面应用程序内部某些区域的路线图?

Java swing桌面应用程序内部某些区域的路线图?,java,swing,jxbrowser,Java,Swing,Jxbrowser,我尝试创建JavaSwing桌面应用程序,它在JFrame中显示某个区域的路线图。 但pc未连接到internet,它将位于LAN中。 地图应该像我们在地图上从高处向下滚动鼠标一样。比如放大这个区域 我试图通过谷歌找到我得到的很多论坛链接,但每一个都显示了我 我必须做网络应用 谷歌不支持“没有互联网”的地图设施 我应该使用很多JPG,它们存储在文件夹中,用于显示地图frentercode hereom各种高度,这样我们在Google Earth应用程序中看到任何地图时都会像这样 我找到了gowo

我尝试创建JavaSwing桌面应用程序,它在JFrame中显示某个区域的路线图。 但pc未连接到internet,它将位于LAN中。 地图应该像我们在地图上从高处向下滚动鼠标一样。比如放大这个区域

我试图通过谷歌找到我得到的很多论坛链接,但每一个都显示了我

  • 我必须做网络应用
  • 谷歌不支持“没有互联网”的地图设施
  • 我应该使用很多JPG,它们存储在文件夹中,用于显示地图fr
    entercode here
    om各种高度,这样我们在Google Earth应用程序中看到任何地图时都会像这样
  • 我找到了goworldwind.org,但现在还不清楚

    有什么线索/想法我该怎么办

    Hi已使用以下程序在jxbrowser中显示地图

    package dummy;
    
    import java.awt.BorderLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.WindowConstants;
    
    import com.teamdev.jxbrowser.chromium.Browser;
    import com.teamdev.jxbrowser.chromium.BrowserFactory;
    
    public class GoogleMapDemo {
    public static final int MIN_ZOOM = 0;
    public static final int MAX_ZOOM = 21;
    private static int zoomValue = 4;
    
    public static void main(String[] args) {
    final Browser browser = BrowserFactory.create();
    
    JButton zoomInButton = new JButton("Zoom In");
    zoomInButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
    if (zoomValue < MAX_ZOOM) {
    browser.executeJavaScript("map.setZoom(" + ++zoomValue + ")");
    }
    }
    });
    
    JButton zoomOutButton = new JButton("Zoom Out");
    zoomOutButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
    if (zoomValue > MIN_ZOOM) {
    browser.executeJavaScript("map.setZoom(" + --zoomValue + ")");
    }
    }
    });
    
    JPanel toolBar = new JPanel();
    toolBar.add(zoomInButton);
    toolBar.add(zoomOutButton);
    
    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    frame.add(browser.getView().getComponent(), BorderLayout.CENTER);
    frame.add(toolBar, BorderLayout.NORTH);
    frame.setSize(700, 500);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
    
    browser.loadURL("/home/StaticMapDemo/map.html");
    //browser.loadURL("http://www.google.com");
        }
    }
    
    packagedummy;
    导入java.awt.BorderLayout;
    导入java.awt.event.ActionEvent;
    导入java.awt.event.ActionListener;
    导入javax.swing.JButton;
    导入javax.swing.JFrame;
    导入javax.swing.JPanel;
    导入javax.swing.WindowConstants;
    导入com.teamdev.jxbrowser.chromium.Browser;
    导入com.teamdev.jxbrowser.chromium.BrowserFactory;
    公共类GoogleMapDemo{
    公共静态最终int MIN_ZOOM=0;
    公共静态最终int MAX_ZOOM=21;
    私有静态int zoomValue=4;
    公共静态void main(字符串[]args){
    最终浏览器=BrowserFactory.create();
    JButton zoomInButton=新JButton(“放大”);
    addActionListener(新ActionListener(){
    已执行的公共无效操作(操作事件e){
    如果(缩放值<最大缩放){
    executeJavaScript(“map.setZoom(“+++zoomValue+”));
    }
    }
    });
    JButton zoomOutButton=新JButton(“缩小”);
    添加ActionListener(新建ActionListener()){
    已执行的公共无效操作(操作事件e){
    如果(缩放值>最小缩放){
    executeJavaScript(“map.setZoom”(+--zoomValue+”);
    }
    }
    });
    JPanel toolBar=新的JPanel();
    工具栏。添加(缩放按钮);
    工具栏。添加(缩放按钮);
    JFrame=新JFrame();
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    frame.add(browser.getView().getComponent(),BorderLayout.CENTER);
    frame.add(工具栏,BorderLayout.NORTH);
    框架设置尺寸(700500);
    frame.setLocationRelativeTo(空);
    frame.setVisible(true);
    loadURL(“/home/StaticMapDemo/map.html”);
    //browser.loadURL(“http://www.google.com");
    }
    }
    
    我有map.html文件

    
    html{高度:100%}
    正文{高度:100%;边距:0;填充:0}
    #地图画布{高度:100%}
    var映射;
    函数初始化(){
    变量映射选项={
    中心:新google.maps.LatLng(48.209331,16.381302),
    缩放:4
    };
    map=new google.maps.map(document.getElementById(“地图画布”),
    地图选项);
    }
    google.maps.event.addDomListener(窗口“加载”,初始化);
    
    在运行程序时,我在控制台上发现以下错误

    11:59:16信息:操作系统名称:Linux 11:59:16信息:JRE版本:1.7 32位 11:59:16信息:JxBrowser内部版本:${build.number}11:59:16信息: 正在启动IPC。。。11:59:16信息:正在启动IPC服务器。。。11:59:16信息: 正在启动IPC进程。。。11:59:16信息:开始铬处理。。。 11:59:16信息:“/lib/i386 linux gnu/libudev.so.0”库存在: FALSE 11:59:16信息: “/tmp/jxbrowser-chromium-31.0.1650.57.8/libudev.so.0”库存在: FALSE 11:59:16信息:在中查找libudev.so.x.x.x “/lib/i386 linux gnu”。。。11:59:16信息:寻找libudev.so.x.x.x 在“/lib64”中。。。11:59:16信息:在中找不到libudev.so.x.x.x “/lib64”和“/lib/i386 linux gnu”11:59:16信息:命令行: /tmp/jxbrowser-chromium-31.0.1650.57.8/jxbrowser-chromium 1101 11:59:16信息:铬工艺出口代码127 11:59:16信息: /tmp/jxbrowser-chromium-31.0.1650.57.8/jxbrowser-chromium:运行时出错 加载共享库:libexpat.so.1:无法打开共享对象 文件:线程“main”中没有此类文件或目录异常 com.teamdev.jxbrowser.chromium.BrowserException:未能创建 浏览器在 com.teamdev.jxbrowser.chromium.BrowserFactory.create(未知源) 位于com.teamdev.jxbrowser.chromium.BrowserFactory.create(未知 来源)在 com.teamdev.jxbrowser.chromium.BrowserFactory.create(未知源) 在dummy.GoogleMapDemo.main(GoogleMapDemo.java:25)处,由以下原因引起: com.teamdev.jxbrowser.chromium.internal.ipc.ipc异常:ipc进程 退出。退出代码:127 at com.teamdev.jxbrowser.chromium.internal.ipc.k.run(未知源代码)位于 运行(Thread.java:744)11:59:16信息:关闭IPC。。。 线程“thread-1”java.lang.NullPointerException中的异常位于 com.teamdev.jxbrowser.chromium.internal.ipc.ipc.b(未知来源)位于 com.teamdev.jxbrowser.chromium.internal.ipc.ipc.shutdown(未知 (来源)`com.teamdev.jxbrowser.chromium.internal.aq.run(未知) java.lang.Thread.run(Thread.java:744)中的

    在swing应用程序中显示静态地图的方向正确吗 在单机电脑上如果是,请帮助


    如果我正确理解了这个问题,您正在寻找可以在应用程序脱机时使用的世界地图?能够做到这一点是有问题的,因为世界地图将非常大,我不认为有一个世界地图,作者将允许您下载整个内容

    但是,如果您只对世界地图的一部分感到满意,那么这个网站可能会有所帮助:。它们提供了一个开源的世界地图,如果您查看“导出”选项卡,您可以找到有关如何获取可下载内容以供脱机使用的信息


    如果您正在寻找一个具有在此地图上移动和缩放功能的代码示例,我建议您尝试自己编写,如果遇到任何特定于代码的问题,请创建一个新问题。

    如果我正确理解此问题,您正在寻找一个可以在应用程序脱机中使用的世界地图?能够做到这一点是有问题的,因为一张世界地图会非常大,我不认为有一张世界地图
    <!DOCTYPE html>
    <html>
    <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <style type="text/css">
    html { height: 100% }
    body { height: 100%; margin: 0; padding: 0 }
    #map-canvas { height: 100% }
    </style>
    <script type="text/javascript"
    src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB7J1zsErb9_7jxNu5KU5kIENFObAQEbl0&;sensor=false">
    </script>
    <script type="text/javascript">
    var map;
    function initialize() {
    var mapOptions = {
    center: new google.maps.LatLng(48.209331, 16.381302),
    zoom: 4
    };
    map = new google.maps.Map(document.getElementById("map-canvas"),
    mapOptions);
    }
    google.maps.event.addDomListener(window, 'load', initialize);
    </script>
    </head>
    <body>
    <div id="map-canvas"/>
    </body>
    </html>