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

c:geo - es geht weiter ...

supermaz

Geocacher
Du musst den Max. Heap Space anpassen. Dazu musst du die Datei osmosis.bat anpassen und in Zeile 10 folgendes einfügen:

set JAVACMD_OPTIONS=-Xmx1024m
 

Shadows0001

Geocacher
Hallo Supermaz,
vielen Dank für Deine Antwort :)
Muss ich in der Batch - Datei noch etwas anderes anpassen..
Nicht das es dann wieder an anderer Stelle harkt

Gibt es im Netz wirklich nur diese eine Seite von der CGEO FAQ...

Ich spamme ja schon fast den Thread mit meinem "Umwandlungsproblem"

Gruß Shadows
 

SammysHP

Moderator
Teammitglied
Ja, wo soll denn sonst noch 'ne FAQ von c:geo sein, wenn nicht auf der Homepage davon?! Außerdem hat das nichts mit c:geo zu tun, sondern mit Mapsforge: http://code.google.com/p/mapsforge/
 

Shadows0001

Geocacher
SammysHP schrieb:
Ja, wo soll denn sonst noch 'ne FAQ von c:geo sein, wenn nicht auf der Homepage davon?! Außerdem hat das nichts mit c:geo zu tun, sondern mit Mapsforge: http://code.google.com/p/mapsforge/

Hall Sammy..
Natürlich.. Grundelegend ist das Ganze ein "Mapsforge" - Projekt.

Was mir persönlich fehlt, wäre eine Anleitung (Webseite, etc. ) wie ich die Karten umwandle, worauf zu achten ist, die Randbedingungen (Freier Speicherplatz, Screenshots, Dauer der Umwandlung, Prozessorempfehlung, Fehler die gemacht werden können, etc.)

Ich habe auch mal in einem anderen GC - Forum nachgefragt... Da kam bis jetzt nur "Achselzucken"

Ich bin froh, das ich hier kompetente Ansprechpartner gefunden habe, die mir ihr fundiertes Wissen weitergeben können und vor allem helfen.

So kann ich es wenigstens probieren und evtl. auch Infos weitergeben. Ich nähere mich ja dem Ziel... Wenn auch mit kleinen Schritten. Und hoffentlich werde ich mal erfolgreich sein...

Ich hoffe inständig, dass die Eintragung in der Batch - Datei die letzte Modifizierung ist.
(Ich probiere es auf jeden Fall heute Abend).

Die Android FAQ ist schon sehr gut...
Nur tut man sich an der ein oder anderen Stelle etwas schwer in Bezug auf die Umwandlung der Karten in eine Vektorkarte...
Meines Erachtens ist das aber ein sehr wichtiger Punkt, wenn man das Smartphone im Ausland benutzen möchte mit Offline - Karten.
In Deutschland spielt das ja eher eine untergeordnete Rolle.. Da hat man ja in der Regel eh eine Flat..
Im Ausland muss man aber mit GPX - Dateien arbeiten und mit Offline Maps um den Geldbeutel zu schonen.
Desw. veranstalte ich auch den ganzen Hype.
Klar werde ich auch mein Oregon nutzen..
Was mich aber noch interessiert... Wieviele Pocketquerys verkrafetet CGEO eigentlich?

Gruß Shadows
 

SammysHP

Moderator
Teammitglied
Wir bieten halt nur die Unterstützung für Mapsforge an, die müssten eigentlich bessere Anleitungen herausbringen.

Inzwischen sollte c:geo mit 6.000 Caches klar kommen, am besten aber nicht mehr als 1.000 in einer Liste.
 

Shadows0001

Geocacher
Hi,
Die "osmosis.bat" habe ich so umkonfiguriert:

@ECHO OFF

REM This is an equivalent Windows batch file to complement the unix shell script
REM Corresponding lines from the shell script are printed before the matching batch file commands

REM # Config files can define several variables used throughout this script.
REM # JAVACMD - The java command to launch osmosis.
REM # JAVACMD_OPTIONS - The options to append to the java command, typically used to modify jvm settings such as max memory.
REM # OSMOSIS_OPTIONS - The options to apply to all osmosis invocations, typically used to add plugins or make quiet operation the default.
set JAVACMD_OPTIONS=-Xmx1024m
REM if [ -f /etc/osmosis ] ; then
REM . /etc/osmosis
REM fi
IF EXIST "%ALLUSERSPROFILE%\osmosis.bat" CALL "%ALLUSERSPROFILE%\osmosis.bat"

REM if [ -f "$HOME/.osmosis" ] ; then
REM . "$HOME/.osmosis"
REM fi
IF EXIST "%USERPROFILE%\osmosis.bat" CALL "%USERPROFILE%\osmosis.bat"


REM if [ -z "$JAVACMD" ] ; then
REM # No JAVACMD provided in osmosis config files, therefore default to java
REM JAVACMD=java
REM fi
IF "%JAVACMD%"=="" set JAVACMD=java

REM Set "SAVEDIR" to the current directory
set SAVEDIR=%CD%
set MYAPP_HOME=%~dp0..
REM Now make the MYAPP_HOME path absolute
cd /D %MYAPP_HOME%
set MYAPP_HOME=%CD%
REM Change back to the original directory
cd /D %SAVEDIR%

set MAINCLASS=org.codehaus.classworlds.Launcher
set PLEXUS_CP=%MYAPP_HOME%\lib\default\plexus-classworlds-2.2.2.jar
SET EXEC=%JAVACMD% %JAVACMD_OPTIONS% -cp "%PLEXUS_CP%" -Dapp.home="%MYAPP_HOME%" -Dclassworlds.conf="%MYAPP_HOME%\config\plexus.conf" %MAINCLASS% %OSMOSIS_OPTIONS% %*

%EXEC%

Gruß Shadows
 

Shadows0001

Geocacher
Hi,
mal wieder ein missglückter Versuch..
Hat jemand ´ne Idee?
Die Variante mit type=hd und die Erhöhung auf 2000 in der Batch Datei habe ich schon probiert...
Alles negativ..

Das kam als Meldung:
D:\OSM>osmosis-0.39\bin\osmosis --rb file=us-south.osm.pbf --mw file=us-south.map
24.11.2011 21:16:32 org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.39
24.11.2011 21:16:33 org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
24.11.2011 21:16:33 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
24.11.2011 21:16:33 org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
24.11.2011 21:16:33 org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
24.11.2011 21:16:33 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask process
INFO: start reading data...
24.11.2011 22:22:35 org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion
SCHWERWIEGEND: Thread for task 1-rb failed
java.lang.OutOfMemoryError: Java heap space
at org.mapsforge.preprocessing.map.osmosis.TileData$TDNode.fromNode(TileData.java:155)
at org.mapsforge.preprocessing.map.osmosis.RAMTileBasedDataStore.addNode(RAMTileBasedDataStore.java:134)
at org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask.process(MapFileWriterTask.java:238)
at crosby.binary.osmosis.OsmosisBinaryParser.parseDense(OsmosisBinaryParser.java:138)
at crosby.binary.BinaryParser.parse(BinaryParser.java:124)
at crosby.binary.BinaryParser.handleBlock(BinaryParser.java:68)
at crosby.binary.file.FileBlock.process(FileBlock.java:135)
at crosby.binary.file.BlockInputStream.process(BlockInputStream.java:34)
at crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:37)
at java.lang.Thread.run(Unknown Source)
24.11.2011 22:22:37 org.openstreetmap.osmosis.core.Osmosis main
SCHWERWIEGEND: Execution aborted.
org.openstreetmap.osmosis.core.OsmosisRuntimeException: One or more tasks failed.
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.waitForCompletion(Pipeline.java:146)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:92)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:31)

D:\OSM>

Scheint wohl immer noch ein "Speicherproblem" zu sein...
Ich versuche es jetzt mal mit 1440

Gruß Shadows
 

Shadows0001

Geocacher
Hi,
mal wieder ´ne Fehlermeldung. Anscheinend immer noch zu wenig Arbeitsspeicher...

D:\OSM>osmosis-0.39\bin\osmosis --rb file=us-south.osm.pbf --mw file=us-south.map
24.11.2011 22:34:01 org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.39
24.11.2011 22:34:03 org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
24.11.2011 22:34:03 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
24.11.2011 22:34:04 org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
24.11.2011 22:34:04 org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
24.11.2011 22:34:04 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask process
INFO: start reading data...
25.11.2011 03:24:29 org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion
SCHWERWIEGEND: Thread for task 1-rb failed
java.lang.OutOfMemoryError: Java heap space
at gnu.trove.map.hash.TLongObjectHashMap.rehash(TLongObjectHashMap.java:157)
at gnu.trove.impl.hash.THash.postInsertHook(THash.java:388)
at gnu.trove.map.hash.TLongObjectHashMap.doPut(TLongObjectHashMap.java:248)
at gnu.trove.map.hash.TLongObjectHashMap.put(TLongObjectHashMap.java:222)
at org.mapsforge.preprocessing.map.osmosis.RAMTileBasedDataStore.addNode(RAMTileBasedDataStore.java:135)
at org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask.process(MapFileWriterTask.java:238)
at crosby.binary.osmosis.OsmosisBinaryParser.parseDense(OsmosisBinaryParser.java:138)
at crosby.binary.BinaryParser.parse(BinaryParser.java:124)
at crosby.binary.BinaryParser.handleBlock(BinaryParser.java:68)
at crosby.binary.file.FileBlock.process(FileBlock.java:135)
at crosby.binary.file.BlockInputStream.process(BlockInputStream.java:34)
at crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:37)
at java.lang.Thread.run(Unknown Source)
25.11.2011 03:24:31 org.openstreetmap.osmosis.core.Osmosis main
SCHWERWIEGEND: Execution aborted.
org.openstreetmap.osmosis.core.OsmosisRuntimeException: One or more tasks failed.
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.waitForCompletion(Pipeline.java:146)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:92)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:31)

D:\OSM>

Wenn ich den Wert auf 2000 setze, dann kommt die Mledung:


D:\OSM>osmosis-0.39\bin\osmosis --rb file=us-south.osm.pbf --mw file=us-south.map
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

D:\OSM>

Ist das jetzt ein "Herantasten" bis die Konvertierung funktioniert?

Größer als 1600 funktioniert momentan nicht....

Hat jemand ´ne Idee?

Gruß Shadows
 

supermaz

Geocacher
Das kann durchaus sein. Ich lasse bei mir die Karten auf dem Server mit 16GB RAM und 64Bit laufen. Wenn du nur ein 32Bit Windows hast, liegt die Obergrenze wahrscheinlich bei 1200 - 1400 MB.

Es könnte also durchaus sein, das es garnicht läuft.

Vielleicht ist es besser du lädst dir die fertigen Karten, z.B. hier:

http://uploaded.to/folder/rddzwu
 

Shadows0001

Geocacher
Hi,
ich hätte noch ´n HTPC mit 4GB Ram und 64Bit W7...
Würde das eher laufen oder kann man das auch knicken...
(Wenn ich mir jetzt noch ´n Server besorge zur Karten Erstellung, dann dreht wahrscheinlich die Hierarchie daheim ab...)...

Danke für den Link...
Ich schaue heute Abend mal drauf.

Gruß Shadows
 

SammysHP

Moderator
Teammitglied
Auch bei dem Win7 x64 wirst du nicht über 2 GB kommen. Wobei es mich wundert, dass osmosis so viel Speicher verlangt. Normalerweise sollte er das Stück für Stück durchpipen.

Wenn ich heute Abend zu Hause bin, werde ich es mal testen.
 

Shadows0001

Geocacher
Hi,
mit was für einem System erzeugst Du die *.map Dateien...?
Ich gehe mal davon aus Du benutzt einen Server der auf Linux basiert?

Lädst Du Dir die gleiche Datei (us-south.osm.pbf) herunter zum Probieren? Die hat 1.4 GB.
Ich habe gerade (leider erst jetzt) gesehen, dass es auch eine Florida - Datei gibt als *.pbf

Kann es sein, dass die schlicht und ergreifend zu groß ist für WIndows Systeme?

Wenn ja.. wie kann man dann z.B. die Europa Karte umwandeln?
Die hat schlichte 6.8 GB..
Nicht das ich das jetzt machen wollte...
Das ist rein fürs Verstehen..

Danke im Voraus

Gruß Shadows
 
supermaz schrieb:
Vielleicht ist es besser du lädst dir die fertigen Karten, z.B. hier:
http://uploaded.to/folder/rddzwu
Würde auch den Download fertiger Karten empfehlen, sofern die gewünschte Region angeboten wird.
Die Hauptseite zur genannten Downloadseite ist http://www.vectormaps4locus.eu. Dort kann man auch andere Regionen wählen und sieht das Datum der Erstellung. Die Maps dort sind eigentlich für die Android-App Locus erstellt, da sie aber auf mapsforge basieren, sollten sie auch in allen anderen Apps laufen.
Alternativ Karten direkt von der mapsforge Seite laden.
 

supermaz

Geocacher
Ich glaube schon das unter Win64 mit einer 64Bit JRE mehr als 2GB gehen, getestet habe ich es nicht, da bei mir fast alles unter Linux läuft.

Die europe.osm.pbf habe ich aber auch mit 12GB zugewiesenem Speicher nicht konvertiert bekommen. Zumindest hat sich der Status selbst nach 4 Tagen nicht verändert. Es gab noch nichtmal die übliche Ausgabe mit "habe 10% eingelesen". Es gab aber auch keine Fehlermeldung.

Wenn die Florida reicht und diese kleiner ist, würde ich es damit mal probieren.
 

Shadows0001

Geocacher
Hi,
die Sache mit der 1.4 GB großen Südstaaten Karte ist erst einmal ad acta...
Es fehlt nach wie vor Speicherplatz.

Ich versuche nun die 90 MB große Florida - Karte umzuwandeln...

Und selbst da werkelt der Rechner schon seit 20:39Uhr

Ich bin mal gespannt, ob er wenigstens diese Datenmenge schafft.

Gruß Shadows
 

Shadows0001

Geocacher
Hi,
aktuelle Infos von meiner Umwandlung...
Seit 13:51Uhr bin ich bei 70%

Die 1.4 GB - Datei hätte wohl eine Woche bis zur vollständigen Umwandlung gebraucht.

Wenn ich fertig bin, dann schreibe ich den vollständigen Bericht rein..

Gruß Shadows
 

Shadows0001

Geocacher
Hi :)
Es ist vollbracht :)

D:\>cd osm

D:\OSM>osmosis-0.39\bin\osmosis --rb file=florida.osm.pbf --mw file=florida.osm.map
25.11.2011 20:39:19 org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.39
25.11.2011 20:39:21 org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
25.11.2011 20:39:21 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask <init>
INFO: mapfile-writer version 0.2.4
25.11.2011 20:39:22 org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
25.11.2011 20:39:22 org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
25.11.2011 20:39:23 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask process
INFO: start reading data...
26.11.2011 00:34:53 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask complete
INFO: completing read...
26.11.2011 00:34:56 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask complete
INFO: start writing file...
26.11.2011 04:39:36 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 10.0% of file
26.11.2011 05:39:19 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 20.0% of file
26.11.2011 06:51:12 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 30.0% of file
26.11.2011 09:08:37 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 40.0% of file
26.11.2011 11:09:59 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 50.0% of file
26.11.2011 12:29:28 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 60.0% of file
26.11.2011 13:51:39 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 70.0% of file
26.11.2011 15:17:46 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 80.0% of file
26.11.2011 16:00:40 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 90.0% of file
26.11.2011 16:00:55 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeSubfile
INFO: written 100.0% of file
26.11.2011 16:00:58 org.mapsforge.preprocessing.map.osmosis.MapFileWriter writeFile
INFO: Finished writing file.
26.11.2011 16:00:58 org.mapsforge.preprocessing.map.osmosis.MapFileWriterTask complete
INFO: finished...
26.11.2011 16:19:18 org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline complete.
26.11.2011 16:19:18 org.openstreetmap.osmosis.core.Osmosis run
INFO: Total execution time: 70799703 milliseconds.

D:\OSM>

Rund 20 Stunden für 90 MB...
Ich hätte nicht gedacht, dass das so ein großer Aufwand ist..
Rechner war ein AMD Athlon 2.2 GHz...
Zwar schon ein älteres Semester.. Aber ansonsten ein braves Arbeitstier.

Vielen Dank an Alle, die mir Tips gegeben und Hilfe angeboten haben..

Gruß Shadows
 

HWR-Info

Geocacher
SammysHP schrieb:
So schwer ist das doch nicht. JanF18 möchte eine grafische Linie zwischen aktueller Position und dem Cache auf der Karte haben.

Dies ist in c:geo direkt nicht möglich (ob es das jemals geben wird?), c:geo hat aber auch nicht den Anspruch, eine Navigationsanwendung zu sein. Wenn du wirklich eine Linie brauchst, weil du sie dir nicht denken kannst, könntest du Locus probieren, das kann direkt aus c:geo aufgerufen werden.

Das ist sehr schade, das es NICHT ohne ein anderes Programm geht. (Locus)
Ich kenne das vom Oregon in der Kartendarstellung und auch die iPhone App von GC
hat so eine, wie ich finde brauchbare Linie. Wenn zusätzlich noch der Abstand zum Ziel
eingeblendet würde, wäre das topp. Dann könnte ich auch mein Oregon mal zu Hause
lassen. Z.z. nehme ich das nur wegen der Linie immer noch mit :roll: :p
 

SammysHP

Moderator
Teammitglied
Du kannst uns gerne einen entsprechenden Patch schicken, bloß uns fehlen für sowas die Entwickler-Ressourcen. Außerdem ist es keine große Sache, Locus für sowas zu verwenden (statt Menü-->Navigieren-->Karte eben Menü-->Navigieren-->Locus).
 
Oben