[Talk-de] Tiles automatisiert zu einem Bild zusammenfügen.

Andre Hinrichs andre.hinrichs at gmx.de
Di Dez 14 20:24:24 UTC 2010


Ich habe vor langer Zeit genau für diesen Zweck ein Script geschrieben,
welches Tiles zusammenfügt. Allerdings holt sich dieses Script die Tiles
selbst vom Server. Die einzelnen Tiles werden in das Verzeichnis
"tiledir" geschrieben und bleiben auch dort! Der Bereich kann also
verändert werden, ohne dass die gleichen Tiles nochmal geladen werden.

Wenn Du also ein Update machen möchtest, musst Du die alten Tiles selbst
löschen.

Achtung: Wegen der maximalen Länge der Befehlszeile (Aufruf von montage)
kann der Bereich nicht beliebig groß gemacht werden!

Hier das Script (Zitat-Zeichen entfernen!)


> #!/bin/bash                                                                                                                                                                                    
> 
> # Usage: compose.sh <outfile> <zoom> <xstart> <xend> <ystart> <yend>                                                                                                                           
> 
> # Example for Braunschweig (Germany):                                                                                                                                                          
> # compose.sh braunschweig.png 14 8666 8680 5386 5402                                                                                                                                           
> 
> OUTFILE="$1"
> ZOOM=$2
> X_START=$3
> X_END=$4
> Y_START=$5
> Y_END=$6
> 
> TILEDIR="tiledir"
> 
> # Do not edit below this line!                                                                                                                                                                 
> Y=${Y_START}
> HEIGHT=0
> if [ ! -d "${TILEDIR}" ]; then
>     echo -n "Creating tile folder... "
>     mkdir -p "${TILEDIR}"
>     echo "done"
> fi
> echo -n "Downloading tiles... "
> while [ ${Y} -le ${Y_END} ]; do
>     X=${X_START}
>     WIDTH=0
>     while [ ${X} -le ${X_END} ]; do
>         CURFILE="${TILEDIR}/${X}_${Y}.png"
>         if [ ! -f "${CURFILE}" ]; then
>             curl -o "${CURFILE}" "http://a.tile.openstreetmap.org/${ZOOM}/${X}/${Y}.png" &>/dev/null &
>         fi
>         COMPOSITE="${COMPOSITE} ${CURFILE}"
>         WIDTH=$((WIDTH+1))
>         X=$((X+1))
>     done
> 
>     HEIGHT=$((HEIGHT+1))
>     Y=$((Y+1))
> done
> wait
> echo "done"
> echo -n "Creating the montage picture... "
> montage -tile ${WIDTH}x${HEIGHT} ${COMPOSITE} -geometry 256x256+0 "${OUTFILE}"
> echo "done"
> 
> # End                                                                                                                                                                                          



Am Dienstag, den 14.12.2010, 14:04 +0100 schrieb Tom Müller:
> Hallo,
> 
> ich habe hier von einer Software 400 Tiles der Form:
> im0_0.png bis im19_19.png
> liegen. Ich würde daraus gerne ein großes Bild machen, allerdings nur 
> ungern 400 Tiles per Copy&Paste zusammenkleben.
> 
> Gibt es eine Software, die das für machen kann?
> 
> Danke
> Tom
> 
> 
> _______________________________________________
> Talk-de mailing list
> Talk-de at openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-de






Mehr Informationen über die Mailingliste Talk-de