标签: worldwind

WorldWind - Runnable jar:java.library.path 中没有gluegen-rt

我正在使用WorldWind Java和 Eclipse。

我正在尝试从 Eclipse 中的项目中导出一个可运行的 jar。导出进行得很顺利,但是当我尝试运行 jar 时出现此错误:

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681)
    at java.lang.Runtime.loadLibrary0(Runtime.java:840)
    at java.lang.System.loadLibrary(System.java:1047)
    at com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102)
    at com.sun.gluegen.runtime.NativeLibLoader.access$000(NativeLibLoader.java:51)
    at com.sun.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:70)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:68)
    at com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:399)
    at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163)
    at com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129)
    at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:109)
    at com.sun.opengl.impl.x11.X11GLDrawableFactory.<clinit>(X11GLDrawableFactory.java:99)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:186)
    at javax.media.opengl.GLDrawableFactory.getFactory(GLDrawableFactory.java:111)
    at javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:520)
    at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:131)
    at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
    at gov.nasa.worldwind.awt.WorldWindowGLCanvas.<init>(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

我可以毫无问题地在 Eclipse 中运行该项目,我在构建路径中引用了 …

java jar worldwind

5
推荐指数
1
解决办法
4404
查看次数

由于依赖关系,无法在 Maven 项目中使用 World Wind Java

我正在尝试在 Maven 项目中使用 World Wind Java。

第一种方法是在这里获取他们的 SDK以及构建路径中的所有依赖项。但我想让它更符合 Maven 标准。

第一个依赖项:jogl-all.jar。SDK v2.0.0 似乎使用 JOGL v2.1.5(来自清单)。因此我将其放入我的 pom 文件中:

<dependency>
    <groupId>org.jogamp.jogl</groupId>
    <artifactId>jogl-all</artifactId>
    <version>2.1.5</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

这是我的问题:两个jar文件的大小非常不同,而且,使用SDK中的JOGL jar,我可以导入com.jogamp.opengl.awt.GLCanvas,而使用maven检索的JAR,我不能。

我不明白如何在使用完全相同的版本时获得两种不同的行为/JAR。

有什么线索吗?在 Maven 项目中使用 World Wind Java 还有其他经验吗?

java jar maven worldwind

5
推荐指数
1
解决办法
1912
查看次数

位置之间的仰角

我正在使用Java NASA WorldWind,我有两个不同高度和位置的对象.

如何在考虑到地球曲率的情况下找到物体之间的仰角?

这张图片说明了(显然不按比例)我正在尝试做的事情:

在此输入图像描述

物体A高出地面50英尺,物体B高出地面500英尺.我怎样才能找到角度X,考虑到地球的曲率?

java math geospatial worldwind

4
推荐指数
1
解决办法
1020
查看次数

重绘其他组件时,JLabel会调整大小

我的Java布局有问题.我正试图将JLabel放在最顶层的五个WorldWindowGLCanvas网格中.就像是:

------------------------------------------------
                     JLabel
------------------------------------------------
                       |
         WWCanvas      |       WWCanvas
                       |

------------------------------------------------
                       |
         WWCanvas      |       WWCanvas
                       |
Run Code Online (Sandbox Code Playgroud)

我目前在JPanel中使用GridBagLayout.程序首次启动时,一切都看起来应该如此.然而,在第一次重绘所有WorldWindowGLCanvas时,顶级JLabel的大小立即增加一倍并且占用太多空间.这是一些相关的代码:

JFrame f = new JFrame("ScintDisplay");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setLayout(new GridBagLayout());

        JLabel timeLabel = new JLabel(getTime(), JLabel.CENTER);
        timeLabel.setSize(new Dimension(200,200));


        WorldWindowGLCanvas wwd1 = new WorldWindowGLCanvas();
        wwd1.setPreferredSize(new java.awt.Dimension(960, 1000));

        WorldWindowGLCanvas wwd2 = new WorldWindowGLCanvas();
        wwd2.setPreferredSize(new java.awt.Dimension(500, 480));

        WorldWindowGLCanvas wwd3 = new WorldWindowGLCanvas();
        wwd3.setPreferredSize(new java.awt.Dimension(500, 480));

        WorldWindowGLCanvas wwd4 = new WorldWindowGLCanvas();
        wwd4.setPreferredSize(new java.awt.Dimension(500, 480));

        WorldWindowGLCanvas wwd5 = new WorldWindowGLCanvas();
        wwd5.setPreferredSize(new java.awt.Dimension(500, 480));

        wwd1.setModel(new BasicModel());
        wwd2.setModel(new BasicModel());
        wwd3.setModel(new BasicModel());
        wwd4.setModel(new BasicModel()); …
Run Code Online (Sandbox Code Playgroud)

java concurrency swing layout-manager worldwind

3
推荐指数
1
解决办法
281
查看次数

如何解释以API为中心的架构?

在我的工作中,我提到World Wind Java具有以API为中心的架构.我这样做是因为很多文章提到它.他反对一个问题"它究竟意味着以API为中心的体系结构?他说Java中的所有库都基于API.所以我的问题是:

如何解释以API为中心的架构?

java api worldwind

3
推荐指数
1
解决办法
1393
查看次数

如何从nasa worldwind中删除世界地图

我正在开展与美国国家航空航天局相关的项目.

任何人都可以解释一下,我可以删除世界地图吗

位于屏幕的左上角.

swing worldwind

2
推荐指数
1
解决办法
1291
查看次数

在Java中按下按钮进行轮询

我有一个基于Java SDK的WorldWind应用程序构建.它有一个很好的事件处理程序,用于检测您何时单击对象,但我遇到了障碍.虽然我可以单击并选择单个对象,但我无法确定用户是否在单击时按下控制键(如果他们想要选择多个对象).我可以为鼠标和键盘实现事件处理程序,但我不能为我的生活弄清楚如何将两者结合在一起.如何让我的鼠标监听器轮询系统以获取当前按下的键列表?

java worldwind

1
推荐指数
1
解决办法
623
查看次数

标签 统计

worldwind ×7

java ×6

jar ×2

swing ×2

api ×1

concurrency ×1

geospatial ×1

layout-manager ×1

math ×1

maven ×1