osmosis.bat für Windows

Hallo Zusammen,

kann mir mal einer erklären wie ich die osmosis.bat für Windows richtig konfiguriere! Ich arbeite mit WINXP. Beim starten erscheint nur kurz das Fenster und nichts passiert.

Über eine Hilfestellung wäre ich euch echt dankbar.

gruß
Willi (mapfriend70)

Das ist die osmosis.bat aus Version 0.38 aus dem /bin Ordner.


@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.

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 %MYAPP_HOME%
set MYAPP_HOME=%CD%
REM Change back to the original directory
cd %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%


Von der Datei selber lass am besten die Finger von.
Ich rufe diese bat mit den entsprechenden Parametern auf:
http://wiki.openstreetmap.org/wiki/User:Ajoessen/Osmosis

Den Pfad zur osmosis.bat und zur OSM-Quelldatei musst du noch entsprechend anpassen.

Was nicht geht: In einer batch-datei osmosis mehrmals aufrufen. Denn eine batch-Datei kann zwar eine andere aufrufen, die Verarbeitung kehrt aber nicht zur ursprünglichen batch-Datei zurück.

Gruß und HTH,
ajoessen

Danke für den Tipp. Jetzt funktioniert es. Muss mich natürlich mit den ganzen Parametern noch vertraut machen.

Das Forum ist echt spitze.

moin moin,

klein aber fein, deine beschreibung.

das mit der bat-verschachtelung ist schon komisch; da ich aber kein windows mehr habe, kann ich das nicht reproduzieren.
hauptsache, es funtoniert. :wink:

btw: mit welcher osmosis-version “schaffst” du denn? 0.38ff oder kleiner? bei 0.38 hat sich ja das ganze db-format auf hstore geändert und ist meines erachtens einfacher geworden.
gruss
walter

Ist ja toll, dass ich nem super senior member noch was beibringen kann :wink:

Das war halt in DOS schon so, und an der Kommandozeilenbearbeitung hat sich seitdem wenig geändert.

Bei mir sind 0.37 und 0.38 im Einsatz. Einen nennenswerten Unterschied sehe ich da nicht. Seit es pbf gibt, gehts schon schneller. Mit Ausnahme der europe.osm.pbf, die unter Windows nicht will.

Gruß,
ajoessen

Es gibt unter Win zahlreiche Möglichkeiten eine Batch Datei aufzurufen:

call …
cmd /K …
start /wait …

Da ist bestimmt auch was dabei, was den Mehrfachaufruf von osmosis ermöglicht.

Chris


echo on

call ../tools/osmosis-0.35/bin/osmosis.bat --read-xml file="%Village%_raw.osm" --bounding-polygon file="boundary_%Village%.poly" --write-xml file="%Village%.osm"

dir /B %Village%.osm

perl -f ../tools/streets_v1.pl strlst_%Village%.dat %Village%.osm 

nach dem Abarbeiten von
call …/tools/osmosis-0.35/bin/osmosis.bat

geht es ganz normal in der Batch Datei weiter. (XP SP3)

Mit der osmosis-Datenbank hab ich bisher wenig gemacht. Für Mapnik hatte ich die osm2pgsql-Variante im Einsatz.

Unterschiedlich. Wenn ich nur nach bb filtere, braucht er überhaupt keinen Platz im temp-Ordner. Das geht einfach sequentiell im Arbeitsspeicher. Ausserdem steigt er schon ziemlich frühzeitig beim Knotenimport aus, und das nach einer durch 1000 ohne Rest teilbaren Anzahl von Knoten (nicht Knoten-ID).
In der Mailingliste wurde vermutet, dass es an java liegt. Die Extrakte werden mit Linux angelegt und im Schadensfall mit Windows gelesen. Selber pbf aus der osm.bz2 erzeugt läuft unter Windows klaglos,ebenso Linux → Linux, und die 6GB europe.osm.bz2 läuft auch durch.

Gruß,
ajoessen

alles klar, ich springe fast immer bei osmosis auf das “datenbank-gleis”. :wink:
und zum rendern ist osm2pgsql die einfachere methode bei der osmosis datenschaufler und die db nur nebensache ist.
gruss
walter

Hallo Zusammen,

habe das jetzt hinbekommen mit der osmosis.bat.

Probiere gerade etwas aus, indem ich z.b. amenity=bench und fuel aus saarland.osm extrahiere.

c:\gps\tools\osmosis-0.38\bin\osmosis.bat --read-xml c:\gps\daten\osmosis\saarland.osm.bz2 --tf accept-nodes amenity=bench amenity=fuel --tf reject-ways --tf reject-relations --write-xml c:\gps\tools\maperitive-1083\mymaps\saarland-fuel.osm

Einzeln klappt das inkl. Weiterverarbeitung und Anpassung der Rules für Maperitive schon gut.

Jetzt mein Problem:

Ich möchte amenity=bench und fuel gleichzeitig aus der saarland.osm extrahieren, oder muss ich die irgendwie zusammenführen z. B. mkgmap?

Gruß Willi