def lettreA(): #affiche la lettre A dans un maillage de 3 par 5 lettreAX=[0,0,0,0,1,1,2,2,2,2] lettreAY=[1,2,3,4,0,2,1,2,3,4] pixel.initialiser(3,5,10) for x in range(len(lettreAX)): pixel.marquer(lettreAX[x],lettreAY[x]) pixel.afficher()
def lettreB(): #affiche la lettre B dans un maillage de 3 par 5 lettreBX=[0,0,0,0,0,1,1,1,2,2] lettreBY=[0,1,2,3,4,0,2,4,1,3] pixel.initialiser(3,5,10) for x in range(len(lettreBX)): pixel.marquer(lettreBX[x],lettreBY[x]) pixel.afficher()
def coeur(): coeurX=[1,1,2,2,2,3,3,3,4,4,4,5,5] coeurY=[1,2,1,2,3,2,3,4,1,2,3,1,2] pixel.initialiser(7,7,10) pixel.couleur() for x in range(len(coeurX)): pixel.marquer(coeurX[x],coeurY[x]) pixel.afficher(0.1) pixel.afficher()
def dessinerpix(xpos, ypos, taille): import pixel as px xmax = int(2 * max(xpos) + 1) #on choisit les positions de la tortue les plus éloignées ymax = int(2 * max(ypos) + 1) departx = xmax / 2 #la position (0,0) correspond au coin gauche dans pixel, donc il faudra décaler tout les pixels pour qu'ils soient au bon endroit departy = ymax / 2 px.initialiser( xmax, ymax, taille ) #on définit la fenêtre à partir des positions les plus éloignées pour voir tout le dessin for k in range(len(xpos)): #on parcourt la liste des positions px.marquer( int(xpos[k]) + departx, departy - int(ypos[k]) ) #on prend la partie entière de chaque position car les coordonnées des pixels sont forcéments entières px.afficher() #on affiche
def automate(P, arret): '''gère l'automate et renvoie les piles à l'état final.''' piles = initialisation(P) perdus = 0 H = int(1.2 * P) px.initialiser(P, H, 200 // P) 10 while True : piles[0] += 1 # On affiche le nouveau grain px.marquer(0, H - piles[0], 0) px.afficher(0.1) for i in range(50): piles, perdus = actualise(piles, H, perdus) if perdus > arret : # permet de s'arrêter dès que 1000 grains sont sortis return(piles, perdus)
mon_depick = pickle.Unpickler(fd) wn = mon_depick.load() s.w = wn for i in xrange(0, lenC1): for j in xrange(0, lenC2): if s.w[i,j] > maxW: maxW = s.w[i,j] if s.w[i,j] < minW: minW = s.w[i,j] print "Poids minimum:", minW print "Poids maximum:", maxW for file in os.listdir(os.getcwd()): # print "Fichier :", file if file[-4:] == ".spw": fileComp = os.getcwd() + "/" + file with open(fileComp, 'rb') as fd: mon_depick = pickle.Unpickler(fd) wn = mon_depick.load() s.w = wn pixel.initialiser(lenC1, lenC2, 20) for i in xrange(0, lenC1): for j in xrange(0, lenC2): val = norm(minW, maxW, s.w[i,j]) pixel.marquer(i, j, val) pixel.enregistrer(os.getcwd() + "/" + file[:-4] + ".gif")