Subversion Repositories eFlore/Projets.eflore-projets

Rev

Blame | Last modification | View Log | RSS feed

#!/bin/bash
# Mohcen BENMOUNAH & Jean-Pascal MILCENT [19 juillet 2011]
# Script de lancement de l'integration des donnees OSM pour le geocodage inverse
#
# Serveur
#CHEMIN_JAVA="/usr/local/jdk/bin/java"
#CHEMIN_PHP="/usr/local/bin/php"
#CHEMIN_SCRIPT="/home/telabotap/www/eflore/scripts/carto-osm/actuel"
#CHEMIN_OSMOSIS="/usr/local/sbin/osmosis-0.39/bin/osmosis"
#CHEMIN_FICHIER_OSM="/home/telabotap/www/eflore/donnees/osm"
# Local
CHEMIN_JAVA="/usr/bin/java"
CHEMIN_SCRIPT="/home/jpm/web/eflore/eflore-projets/scripts"
CHEMIN_OSMOSIS="/home/jpm/Applications/osmosis-0.39/bin/osmosis"
CHEMIN_FICHIER_OSM="/home/jpm/Documents/osm"
CHEMIN_PHP="/opt/lampp/bin/php"

CHEMIN_LOG="$CHEMIN_SCRIPT/logs"
MEMORY_LIMIT_PHP="4000M"

echo "Telechargement du nouveau fichier OSM ...";
wget -r http://download.geofabrik.de/osm/europe/france.osm.bz2 -O "$CHEMIN_FICHIER_OSM/france.osm.bz2"

echo "Export de l'emplacement du binaire Java dans la variable d'environnement JAVACMD";
export JAVACMD="$CHEMIN_JAVA"

echo "Filtrage du fichier en cours ...";
$CHEMIN_OSMOSIS \
        --fast-read-xml "$CHEMIN_FICHIER_OSM/france.osm.bz2" \
        --tf accept-relations admin_level=8 \
        --tf accept-relations type=boundary \
        --tf accept-relations ref:INSEE=* \
        --used-way \
        --used-node \
        --wx $CHEMIN_FICHIER_OSM/france_communes_new.osm

if [ ! -f "$CHEMIN_FICHIER_OSM/france_communes_old.osm" ] ; then
        echo "Analyse du fichier osm en cours ...";
        $CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a analyser -m manuel -f "$CHEMIN_FICHIER_OSM/france_communes_new.osm" > $CHEMIN_LOG/analyse.log
else
        echo "Suppression du fichier DIFF existant en cours ...";
        rm -f "$CHEMIN_FICHIER_OSM/france_communes_diff.osm"
        
        echo "Déduction de la différence en cours ...";
        $CHEMIN_OSMOSIS\
                --read-xml file="$CHEMIN_FICHIER_OSM/france_communes_new.osm" \
                --read-xml file="$CHEMIN_FICHIER_OSM/france_communes_old.osm" \
                --derive-change \
                --write-xml-change file="$CHEMIN_FICHIER_OSM/france_communes_diff.osm"
        
        echo "Debut de la mise a jour de base ...";
        $CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/mise_a_jour -a MAJ -f "$CHEMIN_FICHIER_OSM/france_communes_diff.osm" > $CHEMIN_LOG/analyse.log
fi

echo "Renommage du fichier NEW en OLD en cours ...";
mv "$CHEMIN_FICHIER_OSM/france_communes_new.osm" "$CHEMIN_FICHIER_OSM/france_communes_old.osm" 

echo Traitement de l\'ordre en cours ...;
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a ordre 

echo "Remplissage des polygones en cours ...";
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a polygone

echo Remise de l\'ordre a zero en cours ...;
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a zero

echo Traitement de l\'ordre des polygones incomplets en cours ...;
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a ordonnerPolygoneInc

echo "Remplissage des polygones incomplets en cours ...";
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a remplirPolygoneInc

echo "Renommage des polygones incomplets en cours ...";
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a renommer

echo "Definition des centroids en cours ...";
$CHEMIN_PHP -d memory_limit=$MEMORY_LIMIT_PHP $CHEMIN_SCRIPT/cli.php osm/parseur_osm -a centre

echo "FIN DE LA MISE A JOUR !";