Lycée Jean Vilar - Villeneuve lez Avignon
Page d'accueil Le site académique
Le site du lycée Espace Numérique de Travail
Le lycée
  Le lycée Jean Vilar
  Archives
  Art et culture
  Association Sportive
  Blogs
  CDI
  Développement durable
  Enseignements
  Espace enseignants
  Espace lycéens
  Espace parents
  Grand oral
  Journal du lycée
  Marchés publics
  Orientation
  Projet d'établissement
  Spécialités
  TICE
  Un lycée européen
  Voyages
  Webradio













Nouvelle page 1
Jean Vilar
Deux ballons dans les vagues
Python  

Des exemples pour apprendre


Modules à importer :
          pylab  pour utiliser les fonctions mathématiques et créer des graphiques

Avec ce programme :
- on efface la scène avec  clf() 
- on impose la même échelle horizontale et verticale avec  axis("equal") 
- on impose la limite inférieure de l'axe des ordonnées avec  ylim(ymin) 
- on crée une boucle avec  for ... in 
- on place des points avec  plot() 
- on trace de cercles avec  Circle() 
- on colore sous la courbe avec  fill_between() 
- on attend avec  pause() 
- on affiche un graphe avec  show() 

Le code

from pylab import *
for i in range(0, 200):
    # On efface la scène
    clf()
    # On impose la même échelle horizontale que verticale
    # pour que le ballon soit rond

    axis("equal")
    # On impose la limite inférieure de l'axe des ordonnées
    # pour ne pas qu'elle soit modifiée pendant l'animation
    ylim(ymin = -4)
    xB1 = 5
    xB2 = 14.425
    yB1 = 0.25 + 0.25 * sin(xB1 - 0.4 * i)
    yB2 = 0.25 + 0.25 * sin(xB2 - 0.4 * i)
    # On dessine les ballons
    circle1 = Circle((xB1, yB1), radius = 0.25, fc = "purple")
    circle2 = Circle((xB2, yB2), radius = 0.25, fc = "red")
    gca().add_patch(circle1)
    gca().add_patch(circle2)
    # on crée une liste de 500 éléments de 0 à 20
    x = linspace(0,20,500)
    y = 0.25 * sin(x - 0.4 * i)
    # on dessine la surface
    plot(x,y,c = "#CCDDEE")
    # on remplit jusqu'à y = -4
    fill_between(x, y, -4 , facecolor = "#DDEEFF")
    pause(0.001)
show()

Le résultat partiel :