recalage PK secteur + tard
déplacement du recalage des PK secteurs APRÈS avoir recalculé la topologie pgRouting
This commit is contained in:
parent
6a868dc946
commit
2853f22254
|
@ -39,11 +39,6 @@ ogr2ogr -f "PostgreSQL" PG:"host=$DB_HOST port=$DB_PORT user=$DB_USER password=$
|
||||||
echo " fait"
|
echo " fait"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
echo " recalage des PK secteurs sur un nœud du réseau routable"
|
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME < sql/phase_2.1_recalage_pk_secteurs.sql
|
|
||||||
echo " fait"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -66,19 +61,11 @@ ogr2ogr -f "PostgreSQL" PG:"host=$DB_HOST port=$DB_PORT user=$DB_USER password=$
|
||||||
echo " fait"
|
echo " fait"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
echo " recalage des points de nettoyage sur un nœud du réseau routable"
|
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME < sql/phase_2.2_recalage_points_nettoyage.sql
|
|
||||||
echo " TODO"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
|
|
||||||
# on appelle le script qui s'occupe du calcul du routage
|
|
||||||
#. phase_2_routing.sh
|
|
||||||
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
echo " F I N traitements phase 2"
|
echo " F I N récupération des données phase 2"
|
||||||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
|
@ -43,8 +43,8 @@ echo ""
|
||||||
|
|
||||||
|
|
||||||
echo " suppression des objets de osm_roads_pgr qui intersectent avec les zones de boucles"
|
echo " suppression des objets de osm_roads_pgr qui intersectent avec les zones de boucles"
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c \
|
||||||
DELETE FROM osm_roads_pgr WHERE id IN
|
"DELETE FROM osm_roads_pgr WHERE id IN
|
||||||
(
|
(
|
||||||
SELECT a.id
|
SELECT a.id
|
||||||
FROM osm_roads_pgr a, osm_roads_pgr_patch_mask m
|
FROM osm_roads_pgr a, osm_roads_pgr_patch_mask m
|
||||||
|
@ -57,8 +57,8 @@ echo ""
|
||||||
|
|
||||||
|
|
||||||
echo " collage des objets de la couche osm_roads_pgr_patch à la place des objets supprimés"
|
echo " collage des objets de la couche osm_roads_pgr_patch à la place des objets supprimés"
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c \
|
||||||
INSERT INTO osm_roads_pgr
|
"INSERT INTO osm_roads_pgr
|
||||||
SELECT
|
SELECT
|
||||||
nextval('osm_roads_pgr_id_seq') AS uid,
|
nextval('osm_roads_pgr_id_seq') AS uid,
|
||||||
$secteur_id AS secteur_id,
|
$secteur_id AS secteur_id,
|
||||||
|
@ -66,8 +66,7 @@ INSERT INTO osm_roads_pgr
|
||||||
NULL, NULL, NULL, NULL,
|
NULL, NULL, NULL, NULL,
|
||||||
a.the_geom
|
a.the_geom
|
||||||
FROM osm_roads_pgr_patch a, osm_roads_pgr_patch_mask m
|
FROM osm_roads_pgr_patch a, osm_roads_pgr_patch_mask m
|
||||||
WHERE ST_INTERSECTS(a.the_geom, m.the_geom);
|
WHERE ST_INTERSECTS(a.the_geom, m.the_geom);"
|
||||||
"
|
|
||||||
echo " fait"
|
echo " fait"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
|
@ -79,17 +78,20 @@ SET cost = st_length(the_geom), reverse_cost = st_length(the_geom)
|
||||||
WHERE secteur_id = $secteur_id ;"
|
WHERE secteur_id = $secteur_id ;"
|
||||||
|
|
||||||
echo " recrée des nœuds uniquement sur les zones de patch"
|
echo " recrée des nœuds uniquement sur les zones de patch"
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "SELECT pgr_nodeNetwork('osm_roads_pgr', 0.001, rows_where := 'secteur_id = $secteur_id');"
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c \
|
||||||
|
"SELECT pgr_nodeNetwork('osm_roads_pgr', 0.001, rows_where:='true');"
|
||||||
|
|
||||||
echo " recalcul la topologie pgRouting uniquement sur les zones de patch"
|
echo " recalcul la topologie pgRouting uniquement sur les zones de patch"
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "SELECT pgr_createTopology('osm_roads_pgr', 0.001, rows_where := 'secteur_id = $secteur_id', clean := false);"
|
# avec nettoyage de la topologie précédente
|
||||||
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c \
|
||||||
|
"SELECT pgr_createTopology('osm_roads_pgr', 0.001, rows_where:='true', clean:=false);"
|
||||||
|
|
||||||
|
|
||||||
# ensuite : on met un coup ÉNORME sur les tronçons ciblés par la couche de points de nettoyage
|
# ensuite : on met un coût ÉNORME sur les tronçons ciblés par la couche de points de nettoyage
|
||||||
# AVANT de calculer les itinéraires
|
# AVANT de calculer les itinéraires
|
||||||
echo " nettoyage de la couche de routage par les points ciblés"
|
echo " nettoyage de la couche de routage par les points ciblés"
|
||||||
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c "
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME -c \
|
||||||
UPDATE osm_roads_pgr SET cost = 1000000, reverse_cost = 1000000
|
"UPDATE osm_roads_pgr SET cost = 1000000, reverse_cost = 1000000
|
||||||
WHERE
|
WHERE
|
||||||
secteur_id = $secteur_id
|
secteur_id = $secteur_id
|
||||||
AND id IN (SELECT r.id FROM osm_roads_pgr r JOIN phase_2_point_nettoyage p ON r.id = p.edge_id);"
|
AND id IN (SELECT r.id FROM osm_roads_pgr r JOIN phase_2_point_nettoyage p ON r.id = p.edge_id);"
|
||||||
|
@ -97,10 +99,25 @@ echo " fait"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
# on recale les PK secteur et les points de nettoyage que maitenant
|
||||||
|
# car on vient de maj la topologie de routage
|
||||||
|
|
||||||
|
echo " recalage des PK secteurs sur un nœud du réseau routable"
|
||||||
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME < sql/phase_2.1_recalage_pk_secteurs.sql
|
||||||
|
echo " fait"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
echo " recalage des points de nettoyage sur un nœud du réseau routable"
|
||||||
|
PGPASSWORD=$DB_PASSWD $PSQL -h $DB_HOST -p $DB_PORT -U $DB_USER -d $DB_NAME < sql/phase_2.2_recalage_points_nettoyage.sql
|
||||||
|
echo " TODO"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo ""
|
echo ""
|
||||||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
echo " F I N préparation pour le calcul d'itiniéraire pour le secteur $secteur_id"
|
echo " F I N préparation pour le calcul d'un itiniraire pour le secteur $secteur_id"
|
||||||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
Loading…
Reference in a new issue