jcp c'est danila qui m'a dis de mettre ça
This commit is contained in:
parent
76daf3f452
commit
9ad5f08613
19
Car.py
19
Car.py
@ -29,16 +29,31 @@ class Car:
|
|||||||
self.initPath()
|
self.initPath()
|
||||||
|
|
||||||
self.pos=list(self.laneShape[0])
|
self.pos=list(self.laneShape[0])
|
||||||
self.v=50
|
self.v=0
|
||||||
self.a=0
|
self.a=0
|
||||||
|
self.b=20
|
||||||
|
|
||||||
self.surf=surface
|
self.surf=surface
|
||||||
|
|
||||||
def draw(self,col):
|
def draw(self,col):
|
||||||
pg.draw.circle(self.surf,col,self.map.convertPos(self.pos),5)
|
pg.draw.circle(self.surf,col,self.map.convertPos(self.pos),5)
|
||||||
|
|
||||||
|
def conduite(self):
|
||||||
|
vmax=10 # vitesse max sur la route actuelle
|
||||||
|
vleader=vmax # vitesse de la voiture leader
|
||||||
|
bleader=15
|
||||||
|
vbar=(self.v+vleader)/2
|
||||||
|
bbar=(bleader+self.b)/2 # decelleration de la vleader et de self
|
||||||
|
S=5
|
||||||
|
T=0.3
|
||||||
|
vsec=vleader+(S-vmax*T)/(vbar/bbar+T)
|
||||||
|
vd=min(vmax,vsec)
|
||||||
|
self.v=max(0,vd)
|
||||||
|
|
||||||
def update(self,dt):
|
def update(self,dt):
|
||||||
|
self.conduite()
|
||||||
lgt=self.v*dt
|
lgt=self.v*dt
|
||||||
|
|
||||||
while(lgt>0):
|
while(lgt>0):
|
||||||
endPos=self.laneShape[self.laneInd+1]
|
endPos=self.laneShape[self.laneInd+1]
|
||||||
l=math.dist(self.pos,self.laneShape[self.laneInd+1])
|
l=math.dist(self.pos,self.laneShape[self.laneInd+1])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user