diff --git a/Car.py b/Car.py index f4daca7..ab02742 100644 --- a/Car.py +++ b/Car.py @@ -29,16 +29,31 @@ class Car: self.initPath() self.pos=list(self.laneShape[0]) - self.v=50 + self.v=0 self.a=0 + self.b=20 self.surf=surface def draw(self,col): 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): + self.conduite() lgt=self.v*dt + while(lgt>0): endPos=self.laneShape[self.laneInd+1] l=math.dist(self.pos,self.laneShape[self.laneInd+1])