fixé le bug avec plusieurs edges internes à la suite

This commit is contained in:
leo 2022-02-10 18:03:09 +01:00
parent 64dcf74783
commit 2abfcc53db
Signed by: leo
GPG Key ID: 0DD993BFB2B307DB

11
Car.py
View File

@ -30,7 +30,12 @@ class Car:
conn=r.getConnections(rn)[0] # Si il trouve pas de connection c'est la merde
edge=self.map.getLane(conn.getViaLaneID()).getEdge()
self.route.append(edge)
secEdge=edge.getConnections(rn)[0].getViaLaneID() # Parfois je sais pas pourquoi il coupe les edges internes, mais il marque quand même la connection, ducoup pour contourner
while secEdge!="":
edge=self.map.getLane(secEdge).getEdge()
self.route.append(edge)
secEdge=edge.getConnections(rn)[0].getViaLaneID()
self.initPath()
@ -45,7 +50,7 @@ class Car:
pg.draw.circle(self.surf,col,self.map.convertPos(self.pos),5)
def conduite(self):
vmax=50 # vitesse max sur la route actuelle
vmax=100 # vitesse max sur la route actuelle
vleader=vmax # vitesse de la voiture leader
bleader=15
vbar=(self.v+vleader)/2
@ -62,7 +67,7 @@ class Car:
while(lgt>0):
endPos=self.laneShape[self.laneInd+1]
l=math.dist(self.pos,self.laneShape[self.laneInd+1])
l=math.dist(self.pos,endPos)
if lgt>=l:
lgt-=l
pos=list(self.laneShape[-1])