Ajouté les lanes et un peu de doc
This commit is contained in:
parent
0d2c54dbc6
commit
7f4c8b6e8b
20
DOC.md
Normal file
20
DOC.md
Normal file
@ -0,0 +1,20 @@
|
||||
# DOCUMENTATION
|
||||
|
||||
## Reseau routier .net.xml de SUMO
|
||||
[ref](https://sumo.dlr.de/docs/Networks/SUMO_Road_Networks.html)
|
||||
|
||||

|
||||
|
||||
### Edge
|
||||
Relie deux nodes, il possède un ID unique le décrivant et les deux ID des nodes composant ses extrémitées.
|
||||
Il ne possède pas directement d'information concernant le tracé de la route, ces données sont fournis par les [lanes](#lane)
|
||||
Un edge est considéré comme "interne" si il est inclus dans une jonction
|
||||
|
||||
### Lane {#lane}
|
||||
Comme le nom l'indique, decris une voie de la route.
|
||||
Possède un ID et un index numéroté de droite à gauche, une vitesse maximale autorisé, une longueur.
|
||||
Le tracé de la route est defini par la propriètée "shape" qui est composée d'une liste de position x,y
|
||||
|
||||
### Junction/Node
|
||||
Une jonction entre plusieurs routes.
|
||||
Possède un ID, une position (x,y), une liste des voies qui s'y intersecte, une liste des voies internes qui la compose, un shape qui l'englobe
|
10
Map.py
10
Map.py
@ -11,10 +11,16 @@ class Map:
|
||||
self.surf=surface
|
||||
|
||||
def fromPath(self,path : str):
|
||||
self.net = sumolib.net.readNet(path)
|
||||
self.net = sumolib.net.readNet(path,withInternal=True)
|
||||
|
||||
def draw(self,screen):
|
||||
for edge in self.net.getEdges():
|
||||
pg.draw.line(self.surf,(255,255,255),edge.getFromNode().getCoord(),edge.getToNode().getCoord())
|
||||
color=(255,255,255)
|
||||
if(edge.getFunction()=="internal"):
|
||||
color=(255,0,0)
|
||||
for lane in edge.getLanes():
|
||||
lastPos = None
|
||||
pg.draw.lines(self.surf,color,False,lane.getShape())
|
||||
|
||||
screen.blit(self.surf,(0,0))
|
||||
|
||||
|
2
main.py
2
main.py
@ -3,7 +3,7 @@ if 'SUMO_HOME' in os.environ:
|
||||
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
|
||||
sys.path.append(tools)
|
||||
else:
|
||||
sys.exit("please declare environment variable 'SUMO_HOME'")
|
||||
print("please declare environment variable 'SUMO_HOME'")
|
||||
|
||||
import pygame as pg
|
||||
from pygame.locals import *
|
||||
|
BIN
net_el.jpg
Normal file
BIN
net_el.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 824 KiB |
Loading…
x
Reference in New Issue
Block a user