2016-09-11 6 views
2

私は、最新のJOGL、処理3.2.1と、このコードをコンパイルしようとしているダウンロード:バグ3.2.1 + UnfoldingMaps

import de.fhpotsdam.unfolding.UnfoldingMap; 
import de.fhpotsdam.unfolding.geo.Location; 
import de.fhpotsdam.unfolding.providers.AbstractMapProvider; 
import de.fhpotsdam.unfolding.providers.Google; 
import de.fhpotsdam.unfolding.providers.MBTilesMapProvider; 
import de.fhpotsdam.unfolding.providers.Microsoft; 
import de.fhpotsdam.unfolding.providers.OpenStreetMap; 
import de.fhpotsdam.unfolding.providers.Yahoo; 
import de.fhpotsdam.unfolding.utils.MapUtils; 
import processing.core.PApplet; 

public class TwoMaps extends PApplet { 

public UnfoldingMap map1; 
public UnfoldingMap map2; 

public static void main(String[] args) { 
    PApplet.main("TwoMaps"); 


} 

public void settings() { 

    size(800, 600, P2D); 

} 



public void setup() { 

    String mbTilesString = "blankLight-1-3.mbtiles"; 

    final boolean offline = false; 

    this.background(200, 200, 200); 

    AbstractMapProvider provider = new Microsoft.RoadProvider(); 
    int zoomLevel = 10; 

    if (offline) { 
     provider = new MBTilesMapProvider(mbTilesString); 
     zoomLevel = 3; 
    } 

    map1 = new UnfoldingMap(this, 50, 50, 350, 500, provider); 
    map2 = new UnfoldingMap(this, 425, 50, 350, 500, provider); 

    map1.zoomAndPanTo(zoomLevel, new Location(32.9f, -117.2f)); 
    map2.zoomAndPanTo(zoomLevel, new Location(55.45f, 40f)); 

    MapUtils.createDefaultEventDispatcher(this, map1); 
    MapUtils.createDefaultEventDispatcher(this, map2); 

} 

public void draw() { 
    map1.draw(); 
    map2.draw(); 
} 

} 

をそして私は、コンソールでこのメッセージを取得し、できませんでした

Unfolding Map v0.9.6 
java.lang.RuntimeException: java.lang.NoSuchFieldError: quality 
at processing.opengl.PSurfaceJOGL$2.run(PSurfaceJOGL.java:461) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NoSuchFieldError: quality 
at de.fhpotsdam.unfolding.mapdisplay.OpenGLMapDisplay.<init>(Unknown Source) 
at de.fhpotsdam.unfolding.mapdisplay.MapDisplayFactory.getMapDisplay(Unknown Source) 
at de.fhpotsdam.unfolding.UnfoldingMap.<init>(Unknown Source) 
at de.fhpotsdam.unfolding.UnfoldingMap.<init>(Unknown Source) 
at TwoMaps.setup(TwoMaps.java:47) 
at processing.core.PApplet.handleDraw(PApplet.java:2387) 
at processing.opengl.PSurfaceJOGL$DrawListener.display(PSurfaceJOGL.java:871) 
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:692) 
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:674) 
at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:443) 
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293) 
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147) 
at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:759) 
at com.jogamp.opengl.util.AWTAnimatorImpl.display(AWTAnimatorImpl.java:81) 
at com.jogamp.opengl.util.AnimatorBase.display(AnimatorBase.java:452) 
at com.jogamp.opengl.util.FPSAnimator$MainTask.run(FPSAnimator.java:178) 
at java.util.TimerThread.mainLoop(Unknown Source) 
at java.util.TimerThread.run(Unknown Source) 

しかし、私はsize()メソッド内P2Dをレンダリング使用していない場合、それは動作しますが、悪いと遅い動作し、1つのマップのみを示しています。インターネットでanythigを見つけます。

しかし、最も面白いのは、Scetchの基本クラスがjava.AppletであるProcessing 2.2.1を使用すると、コードは size()メソッドでも機能します。

AMDのモビリティのRadeon HD 5000のドライバは最新です。これは、マップのアンフォールディングのように見えます

+1

あなたはありがとう処理2を使用し、または3 – tnagel

+0

を処理するためのアンフォールディング地図のベータ版を得るために私達に電子メールを送信するか必要があると述べました。アンフォールディングマップが処理3のために実行されるのを待っていると思います。いつ可能か知っていますか? ありがとうございます。 – Turtality

答えて

3

は今、あなたが本当に、本当に、本当に処理3を使用する必要がある場合、あなたは試みることができる2.

処理に固執する必要があるとしているため、処理3と互換性がありませんここでの答えは:Creating UnfoldingMap instance with java.lang.NoSuchFieldError: quality error

しかし、あなたが戻ったばかりの処理に2

別のノートを行くオフおそらく最高だ:あなたは、すべてのJOGLをダウンロードする必要はありません。処理にはJOGLのバージョンが必要です。 JOGLのバージョンを使用するべきであり、別途ダウンロードする新しいバージョンではありません。ケビン・ワークマンとして

+0

ありがとうございました。 UnfoldingMaps 0.9.6とProcessing 3.2.1の非互換性について私は考えなかった。 しかし、私はJavaアプレットを使用してマップを持つようなプロジェクトを、使用することができるところ、今面白いです。私はアプレットが死んでいると思っていましたし、最新のブロウワーたちはもはやアプレットをサポートしていません。 私はそのようなプロジェクトをどこで使うことができますか? ありがとうございます。 – Turtality

+0

@Turtalityあなたが何を求めているのかは分かりません。はい、アプレットはかなり死んでいます。特定のブラウザとJavaバージョン(あなたが管理していないコンピュータでは難しい)を保証できる環境でのみ、実際に使用することができます。しかし、アプレットとしてデプロイする必要はありません。実行可能なjarまたは実行可能ファイルとしてデプロイすることも、Web Startを使用することもできます。 –

+0

あなたが正しく@Turtalityを理解していて、ブラウザ環境でインタラクティブマップを使用したい場合は、他のJava以外のマッピングライブラリを使用できます。リーフレット。 アンフォールディングは、(アプレットであれば動作しますが)ブラウザ用ではなく、a)学習、b)実験/プロトタイプ/リサーチ、c)インストール/展示/その他の環境あなたは完全な制御権を持っています。 – tnagel