• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Weisse Flächen auf der MovingMap

pfeffer

Geowizard
@maierkurt: habe mal versucht, diese Exception abzufangen (r2121) - bekommst Du sie immernoch?

Gruß,
Pfeffer.
 

maierkurt

Geowizard
Hallo pfeffer!
Die Exception wird jetzt abgefangen und Deine MessageBox erscheint.
Auf dem PDA werde ich morgen testen.

Gruß, maierkurz
 

maierkurt

Geowizard
Irgendwie ist die Sache seltsam.
Bei der static linked Version kommt die Fehlermeldung, dass nicht genügent Ressourcen zur Verfügung stehen und die Funktion wird deaktiviert.
Auf dem PDA kommt keine Fehlermeldung und die Funktion wird auch nicht deaktiviert.


Gruß, maierkurt
 

arbor95

Geoguru
Hab meine Dateien auf den aktuellen Stand gebracht und stelle folgendes fest:
Die Java-Version mit easy Eclipse und als eigenes jar zeigt die Karten ohne grosses Murren. Allerdings stürzt die Win32-Version (2124, selbst erzeugt, keine eigenen Änderungen) beim Aufrufen der Karte ab. Die Infos dazu sind nicht hilfreich. Die ARM-Version (2124, selbst erzeugt, keine eigenen Änderungen) streikt auch beim Aufrufen der Karte und geht ohne Meldung ins System zurück.

(p.s.: Schade, dass die Fingerbedienbarkeit der Karten vor den Änderungen nicht eingecheckt wurde)

Der NB 2124 bringt auf dem PDA eine Meldung dass nicht ausreichend Ressourcen da sein und die Funktion daher ausgeschaltet wird. Die Win32-Version denkt und denkt und wenn sie fertig ist mit denken sind die Flächen immer noch weiss.
 

pfeffer

Geowizard
irgendwie erstaunlich, dass sich selbstgebaute windows-exe und die vom NB-Server unterscheiden.
wie hast Du sie Dir selbt gebaut?
a) mit buildexe.bat
b) ant

Ich habe buildexe.bat verwendet und bekomme einen Absturz in Windows. Der NB-Server verwendet freewrtsnapshot.sh.

Gruß,
Pfeffer.
 

arbor95

Geoguru
mit buildexe.bat (und Absturz wie bei dir)
d.h. Die Infos besagen Fehler 0xc0000005 = Schutzverletzung bei Adresse 0x..40ff75
Den Text "Karte laden" sieht man noch kurz.
 
OP
ColleIsarco

ColleIsarco

Geowizard
Hallo,

na super, bei hat die aktuelle Version nach dem aktivieren der Fill-Wihte-Area-Funktion gleich das gesamte Windows-Zement in den Abgrund gerissen :motz: . Na gut, ich hatte mein Handy auch schon bestimmt drei Wochen ohne Pause laufen lassen.

Im Moment kann ich mir die jnf-Dateien nur mit cat anschauen. Ich meine dort gesehen zu haben, das die Option -Xmx12M verwendet wird. Stimmt das? Das wäre erheblich weniger als ich angenommen hatte.

Gruß
Colle Isarco
 

pfeffer

Geowizard
ja, genau, das steht da drin für die PDA. Ohne diese Angabe verwendet Ewe auf den PDA nur 4 MB. Ich habe es auf 12 MB gesetzt, weil Ewe Speicher vorbelegt, auch wenn es ihn garnicht braucht (habe ich irgendwo gelesen, nicht getestet) und meine Tests ergeben haben, dass in der Version mit weißen Rändern 12 MB bei 1000x1000 px ausreichen.

Mit Jewel.ewe in programs kann man die Einstellung leicht ändern: die .jnf öffnen und Button "Edit command line"

Gruß,
Pfeffer.
 

arbor95

Geoguru
Die Windows 32Bit Version steigt bei mir and der Stelle :
Code:
		for (Iterator i = mmp.images.iterator(); i.hasNext();) {
			AniImage im = (AniImage) i.next();
			if (im.getClass().equals(MapImage.class)&& mmp.mapImage != im) {
				i.remove();
			}
			else{
				icons.add(im);
				i.remove();
			}
		}
aus (Schutzverletzung).
Genauer kann ich es grad nicht sagen, da ich jetzt verschwinden muss!
 
OP
ColleIsarco

ColleIsarco

Geowizard
Hallo
pfeffer schrieb:
Mit Jewel.ewe in programs kann man die Einstellung leicht ändern: die .jnf öffnen und Button "Edit command line"

Da lag eigentlich mein Problem. Das Skript runjewel.sh hat eine Panne. Ich hab's jetzt hinbekommen (das Starten).
Aber ich muss jetzt wieder was für's Bruttosozialprodukt tun. ;)

Gruß
ColleIsarco
 

pfeffer

Geowizard
araber95 schrieb:
Die Windows 32Bit Version steigt bei mir and der Stelle :
Code:
		if (im.getClass().equals(MapImage.class)&& mmp.mapImage != im) {
aus (Schutzverletzung).
Genauer kann ich es grad nicht sagen, da ich jetzt verschwinden muss!
Mir scheint, getClass() oder .class scheint Ewe nicht zu unterstützen. Ich habe es mit instanceof mit r2121 ersetzt. Jetzt stürtzt die Windows-Exe nicht mehr ab, aber funktionieren tut's dennoch nicht.
Evtl. sind noch weitere Java-Statements drin, die Ewe nicht kann (zB ein impliziter cast von Integer zu int)?

Gruß,
Pfeffer.
 

pfeffer

Geowizard
Ich habe mir mal die Implementierung angeschaut: wow - die kann ja alles (wenn ich das richtig verstanden habe): mit unterschiedliche großen Bildern (von der Pixelzahl her) umgehen, sowohl als "Hauptkarte" alsauch als Karten, um die weißen Ränder zu füllen.

Gruß,
Pfeffer.
 

arbor95

Geoguru
Das Nicht Funktionieren mit Win32 liegt daran, dass für den Aufruf
im=MovingMapCache.getCache().get(filename, row, column);
immer null zurückgegeben wird und somit für die weissen Flächen nicht gezeichnet wird.
 

klausundelke

Geowizard
Hallo,

ich hab heute mal testhalber das aktuelle NB installiert.
In der Karte ist jetzt der Kreis um die aktuelle Position weg. (VGA-PDA)
Die Fill-white-area Funktion kann wegen Speichermangel nicht genutzt werden.
Dazu folgende Fragen:
Ich habe Karten in verschiedenen Auflösungen gespeichert, die sich immer deutlich
überlappen. Damit hab ich auch ohne die neue Funktion nur geringe weisse Ränder.
Ist das mit der neuen Funktion sinnvoll oder ist es besser die Karten ohne
Überlappung zu erstellen?
Wie werden verschiedene Auflösungen des selben Bereiches gehandelt?
 
OP
ColleIsarco

ColleIsarco

Geowizard
Hallo
pfeffer schrieb:
Ich habe mir mal die Implementierung angeschaut: wow - die kann ja alles (wenn ich das richtig verstanden habe): mit unterschiedliche großen Bildern (von der Pixelzahl her) umgehen, sowohl als "Hauptkarte" alsauch als Karten, um die weißen Ränder zu füllen.

Gruß,
Pfeffer.
Ja logisch. Schließlich sollen auch diejenigen, die mit Scanner und GIMP sich beliebiges zurechtbasteln was von der Funktion haben.

Aber es fehlt noch das Füllen bei gezoomten Karten. :eek:ps:

Gruß
ColleIsarco
 
OP
ColleIsarco

ColleIsarco

Geowizard
Hallo
araber95 schrieb:
Das Nicht Funktionieren mit Win32 liegt daran, dass für den Aufruf
im=MovingMapCache.getCache().get(filename, row, column);
immer null zurückgegeben wird und somit für die weissen Flächen nicht gezeichnet wird.
Immer ist zu selten. Der Cache sollte schon das ein oder andere Mal einen Treffer liefern. Ich weiß jetzt nicht genau, wie der Code an der Stelle aussieht, aber bei einem Cache-Miss sollte, mit der aktuellen Karte gefüllt werden.

Gruß
ColleIsarco
 
OP
ColleIsarco

ColleIsarco

Geowizard
Hallo
klausundelke schrieb:
Wie werden verschiedene Auflösungen des selben Bereiches gehandelt?
Gar nicht, die Karten müssen in der Auflosung übereinstimmen, sonst werden die weißen Flächen nicht gefüllt. Im wesentlichen bin ich davon ausgegangen, dass die Karten aus einer Quelle stammen (z.B. einen WMS-Server) und dann passt die Auflösung. Ich habe aber zugegebenermaßen nicht ausprobiert, was passiert, wenn man einen Ausschnitt auf der Karte betrachtet, der die Grenze zwischen zwei WMS-Servern beinhaltet.

Gruß
ColleIsarco
 

pfeffer

Geowizard
das war ein guter Hinweis. Es war nochmal der gleiche Fehler: .getclass() kann Ewe nicht. Jetzt (r2126) läuft die Windows-exe (getestet habe ich eigentlich nur die .ewe, aber das ist ja das Gleiche)

BTW: war das verschieben der Karte mit der Maus auch schon vor diesem Feature in der Windows-exe kaum in Echtzeit möglich?

Gruß,
Pfeffer.
 

arbor95

Geoguru
ColleIsarco schrieb:
Hallo
araber95 schrieb:
Das Nicht Funktionieren mit Win32 liegt daran, dass für den Aufruf
im=MovingMapCache.getCache().get(filename, row, column);
immer null zurückgegeben wird und somit für die weissen Flächen nicht gezeichnet wird.
Immer ist zu selten. Der Cache sollte schon das ein oder andere Mal einen Treffer liefern. Ich weiß jetzt nicht genau, wie der Code an der Stelle aussieht, aber bei einem Cache-Miss sollte, mit der aktuellen Karte gefüllt werden.

Gruß
ColleIsarco

Habe es jetzt noch weiter geprüft: Das Problem sind die getClass - Aufrufe, die siehe obigen Beitrag von Pfeffer nur in der Java - Variante funktionieren. In der Key Class (MovingMapCache.java) beim equals wird der noch mal verwendet. Und daher trifft der Vergleich dann nie zu und es wird null zurückgegeben.
 

arbor95

Geoguru
pfeffer schrieb:
das war ein guter Hinweis. Es war nochmal der gleiche Fehler: .getclass() kann Ewe nicht. Jetzt (r2126) läuft die Windows-exe (getestet habe ich eigentlich nur die .ewe, aber das ist ja das Gleiche)
so geht es jetzt perfekt
pfeffer schrieb:
BTW: war das verschieben der Karte mit der Maus auch schon vor diesem Feature in der Windows-exe kaum in Echtzeit möglich?
ne , ich habe keine Probleme. (nur als das Füllen noch nicht ging, mit eingeschltetem Füllen)
 
Oben