Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Flackern in Offline Version - Windows
#1
Shy 
Das in diesem Thread beschriebene Verhalten taucht auch bei mir auf - allerdings unter Windows!
Meiner Erinnerung nach stellte es sich erstmals mit V 2.18 ein, vorher nicht. Damals auf einem Vista32-System. Mittlerweile bin ich auf einem anderen Rechner mit Windows7 64 unterwegs. Auch hier kommt es zum Flackern...

Beschreibung: Nach dem Start, beim Zoomen in beliebiger Auflösung, beim Neuladen der Karten, etc., baut sich die Karte zunächst komplett auf, wird dann jedoch zunehmend von blanken Kacheln überlagert. Teilweise werden die wieder korrekt gefüllt, dafür aber andere Tiles blank. Das Geflackere geht so ca. 5 Sekunden und danach sind eben diverse Tiles grau.
Es spielt dabei keine Rolle, ob die Karten lokal aus dem Dateisystem kommen, oder von online. Theme-Wechsel ändert nichts.
Beobachtung: Starte ich den RC in einem relativ kleinen Fenster (ca. 1000x1000, mein Monitor ist 4K!), so tritt der Effekt NICHT auf. Sobald das Fenster vergrößert wird, verstärkt er sich aber mit zunehmend blanken Kacheln.
Ich versuchte diverse Startparameter für die JAVA-Runtime im Control Panel zu setzen, was aber keinen Erfolg brachte. Das war allerdings eher Trial&Error, da ich nicht weiß, welche Parameter da mitspielen.

Kann doch nicht sein, dass ich der Einzige mit diesem Problem bin? Sad 

Btw: Wo im slash-Mapsforge-Source finde ich die Routinen, die hierfür verantwortlich sein könnten? Würde ggfls. selbst mal kompilieren und testen.

Thanx!


Attached Files Thumbnail(s)
   
Reply
#2
(13.04.2017, 16:09)SaschaT Wrote: Btw: Wo im slash-Mapsforge-Source finde ich die Routinen, die hierfür verantwortlich sein könnten? Würde ggfls. selbst mal kompilieren und testen.

Das Rendering? Das macht ja eigentlich die mapsforge-Bibliothek.
--
Christian
Reply
#3
(16.04.2017, 20:25)routeconverter Wrote:
(13.04.2017, 16:09)SaschaT Wrote: Btw: Wo im slash-Mapsforge-Source finde ich die Routinen, die hierfür verantwortlich sein könnten? Würde ggfls. selbst mal kompilieren und testen.

Das Rendering? Das macht ja eigentlich die mapsforge-Bibliothek.

Ja, klar. Da liegt aber wahrscheinlich der Hund begraben?
Ich suche den Pfad im Source, der dafür verantwortlich sein könnte. Bin ich da richtig:
/mapsforge-mapview/src/main/java/slash/navigation/mapview/mapsforge/
?
Reply
#4
(23.04.2017, 11:15)SaschaT Wrote: Ich suche den Pfad im Source, der dafür verantwortlich sein könnte. Bin ich da richtig:
/mapsforge-mapview/src/main/java/slash/navigation/mapview/mapsforge/
?

Ja
--
Christian
Reply
#5
Ich habe gerade nochmal auf die neueste mapsforge Version 0.8 aktualisiert und eine neue Vorabversion hochgeladen. Ist das Flackern jetzt eventuell weg? Oder anders?
--
Christian
Reply
#6
Hm, interessant! Es ist nun erheblich besser geworden, wenn auch nicht wirklich weg!
Bei Fullscreen ist es immer noch unbrauchbar (siehe Anhänge), aber ab ca. 2400 Pixeln funktioniert es gerade so. Manchmal erscheint dann noch eine einzelne leere Kachel, die verschwindet, wenn man die Karte langsam beiseite zieht. Ab 2000 Pixel abwärts ist alles ok.
Damit kann ich arbeiten. Vielen Dank dafür! (Wie auch für das Programm generell!!!)


Attached Files Thumbnail(s)
           
Reply
#7
Bei mir tritt das auch auf, das ist so nicht zu gebrauchen. Allerdings dreht die CPU in der Offline-Version komplett durch, sobald das Programm auch nur gestartet ist, das ist auch nicht so schön. Ich bleibe bei der Online-Version.
Reply
#8
@ygoe, was hast du genau für eine Grafikkarte und was für eine Monitorauflösung und welche Framerate? Welche Windows-Version, wieviel CPU-Cores?

Bei anderen Mapsforge-basierten Programmen, wie Cruiser oder MOBAC, tritt das Verhalten nicht auf. Im Mapsforge-Developer-Forum gab's einen Hinweis auf alternative NVIDIA-Einstellungen für die JRE. Änderte bei mir aber nichts.
Der Reload der Tiles ist das Problem, da ja zunächst, ähnlich wie in Cruiser, die Karte schrittweise komplett geladen wird, dann jedoch ungültige Tiles aus dem Puffer nachgeladen werden.

Inzwischen kann ich genau sagen, wann das Verhalten auftritt: Bei Karte >1820 px horizontal und > 1410 px vertikal. Wenn ich hier x * y * 3 berechne, so kommt ca. 7.600.000 raus. Das korreliert komischerweise mit MapsforgeMapView.java -> createMapView:
...
// Triple map buffer size
ReadBuffer.MAXIMUM_BUFFER_SIZE = 7500000;
...
Kann da der Hund begraben liegen? Wert erhöhen?
Reply
#9
(05.05.2017, 09:06)SaschaT Wrote: Inzwischen kann ich genau sagen, wann das Verhalten auftritt: Bei Karte >1820 px horizontal und > 1410 px vertikal. Wenn ich hier x * y * 3 berechne, so kommt ca. 7.600.000 raus. Das korreliert komischerweise mit MapsforgeMapView.java -> createMapView:
...
       // Triple map buffer size
       ReadBuffer.MAXIMUM_BUFFER_SIZE = 7500000;
...
Kann da der Hund begraben liegen? Wert erhöhen?

Das könnte sein - ich habe leider kein Display, was so groß ist.

Ich habe den Wert in der aktuellen Vorabversion mal auf

// Triple map buffer size: horionzontal * vertical resolution * 3
ReadBuffer.MAXIMUM_BUFFER_SIZE = 3072 * 2048 * 3;

erhöht.

Löst das das Problem? Oder ist Euer Bildschirm noch größer?
--
Christian
Reply
#10
Ähm, ja, der Bildschirm hat 3840x2160, 43". ;-)

Ne, das mit dem BUFFER_SIZE war's leider wohl nicht. Hat nichts geändert.
Aber danke für die schnelle Vorabversion!

Bin kein Java-Entwickler, werde umgehend aber doch mal ne IDE aufsetzen und schauen, ob der Sache auf den Grund zu gehen ist, damit du nicht fortwährend neu kompilieren musst. :-(
Scheint ja ausschließlich ein Problem mit der übergroßen Auflösung zu sein, die noch selten eingesetzt wird. (...Die allerdings ja gerade bei GIS ein großer Vorteil ist...)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)