summaryrefslogtreecommitdiff
path: root/ero1/src/deneigeuses/drone_path.py
diff options
context:
space:
mode:
Diffstat (limited to 'ero1/src/deneigeuses/drone_path.py')
-rw-r--r--ero1/src/deneigeuses/drone_path.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/ero1/src/deneigeuses/drone_path.py b/ero1/src/deneigeuses/drone_path.py
new file mode 100644
index 0000000..2f563b9
--- /dev/null
+++ b/ero1/src/deneigeuses/drone_path.py
@@ -0,0 +1,23 @@
+import networkx as nx
+
+def drone_path(parcours_drone, G):
+ """
+ Utilise le parcours du drone comme base pour le parcours de la déneigeuse
+ Params:
+ parcours_drone: la liste des arêtes visitées par le drone
+ G: le graphe du quartier original
+ Return:
+ Le parcours de la déneigeuse
+ """
+ parcours_deneigeuse = []
+ for (u,v) in parcours_drone:
+ if G.has_edge(u,v):
+ parcours_deneigeuse.append((u,v))
+ else:
+ pcc = nx.shortest_path(G, u, v, weight='length')
+ for i in range(len(pcc) - 1):
+ parcours_deneigeuse.append((pcc[i], pcc[i+1]))
+ parcours_deneigeuse.append((v,u))
+ for i in range(len(pcc) - 1):
+ parcours_deneigeuse.append((pcc[i], pcc[i+1]))
+ return parcours_deneigeuse \ No newline at end of file