Commit 5ef32768 authored by Emmalito Delar's avatar Emmalito Delar
Browse files

writting

parent f1c22fce
#!/usr/bin/env python3
"""Module servant à l'écriture de l'approximation
du nombre pi sur une image ppm généré par simulation"""
def ecriture_pi(ppm, nbr, nb_deci, cote):
"""Ecrit l'approximation de pi sur la liste
représentant une image ppm passé en paramètre"""
nb_car, index = len(nbr), 0
coor = [int((cote/2)-18), int((3*cote-55*nb_deci)/2)]
while nb_car > 0 :
if nbr[index] == '0':
zero(ppm, coor)
elif nbr[index] == '1':
un_(ppm,coor)
elif nbr[index] == '2':
deux(ppm,coor)
elif nbr[index] == '3':
trois(ppm,coor)
elif nbr[index] == '4':
quatre(ppm,coor)
elif nbr[index] == '5':
cinq(ppm,coor)
elif nbr[index] == '6':
six(ppm,coor)
elif nbr[index] == '7':
sept(ppm,coor)
elif nbr[index] == '8':
huit(ppm,coor)
elif nbr[index] == '9':
neuf(ppm,coor)
elif nbr[index] == '.':
dessine_point(ppm,coor)
nb_car -= 1
coor[1] += 55
index += 1
def barre_horizontal(ppm, point):
"""Trace une barre horizontale, d'épaisseur 4 et de longueur 12,
à un point donné, dans la liste générant une image ppm."""
cor_x, cor_y = point
for _ in range(4):
for __ in range(36):
ppm[cor_x][cor_y] = 255
cor_y += 1
cor_x += 1
cor_y = point[1]
def barre_vertical_gauche(ppm, point):
"""Trace une barre vertical à gauche, d'épaisseur 3 et de longueur 36,
à un point donné, dans la liste générant une image ppm, d'épaisseur epp."""
cor_x, cor_y = point
for _ in range(9):
for _ in range(36):
ppm[cor_x][cor_y] = 255
cor_x += 1
cor_y += 1
cor_x = point[0]
def barre_vertical_droite(ppm, point):
"""Trace une barre vertical à droite, d'épaisseur 3 et de longueur 36,
à un point donné, dans la liste générant une image ppm, d'épaisseur epp."""
cor_x, cor_y = point
cor_y += 35
for _ in range(9):
for _ in range(36):
ppm[cor_x][cor_y] = 255
cor_x += 1
cor_y += 1
cor_x = point[0]
def dessine_point(ppm, point):
"""Trace un point carré de coté 5 au point passé
en paramètre dans la liste générant une image ppm."""
cor_x, cor_y = point
cor_x += 67
for _ in range(5):
for _ in range(15):
ppm[cor_x][cor_y] = 255
cor_y += 1
cor_x += 1
cor_y = point[1]
##########################################################
######Les fonctions dessinant les différents entiers######
##########################################################
def trois(ppm, coor):
"""Dessine trois"""
point = [coor[0],coor[1]]
for _ in range(2):
barre_horizontal(ppm, point)
barre_vertical_droite(ppm, point)
point[0] += 36
point[0] -= 4
barre_horizontal(ppm, point)
def huit(ppm, coor):
"""Dessine huit"""
point = [coor[0],coor[1]]
for _ in range(2):
barre_horizontal(ppm, point)
barre_vertical_droite(ppm, point)
barre_vertical_gauche(ppm, point)
point[0] += 36
point[0] -= 4
barre_horizontal(ppm, point)
def deux(ppm,coor):
"""Dessine deux"""
point = [coor[0],coor[1]]
barre_vertical_droite(ppm, point)
barre_horizontal(ppm, point)
point[0] += 32
barre_vertical_gauche(ppm, point)
barre_horizontal(ppm, point)
point[0] += 36
barre_horizontal(ppm, point)
def un_(ppm,coor):
"""Dessine un"""
point = [coor[0],coor[1]]
barre_vertical_droite(ppm,point)
point[0] += 36
barre_vertical_droite(ppm,point)
def sept(ppm,coor):
"""Dessine sept"""
point = [coor[0],coor[1]]
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
point[0] += 36
barre_vertical_droite(ppm,point)
def quatre(ppm,coor):
"""Dessine quatre"""
point = [coor[0],coor[1]]
barre_vertical_droite(ppm,point)
barre_vertical_gauche(ppm,point)
point[0] += 36
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
def neuf(ppm, coor):
"""Dessine neuf"""
point = [coor[0],coor[1]]
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
barre_vertical_gauche(ppm,point)
point[0] += 36
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
point[0] += 32
barre_horizontal(ppm, point)
def cinq(ppm, coor) :
"""Dessine cinq"""
point = [coor[0],coor[1]]
barre_horizontal(ppm, point)
barre_vertical_gauche(ppm,point)
point[0] += 36
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
point[0] += 32
barre_horizontal(ppm, point)
def six(ppm, coor):
"""Dessine six"""
point = [coor[0],coor[1]]
barre_horizontal(ppm, point)
barre_vertical_gauche(ppm,point)
point[0] += 36
barre_horizontal(ppm, point)
barre_vertical_droite(ppm,point)
barre_vertical_gauche(ppm,point)
point[0] += 32
barre_horizontal(ppm, point)
def zero(ppm, coor):
"""Dessine zero"""
point = [coor[0],coor[1]]
barre_horizontal(ppm, point)
barre_vertical_gauche(ppm,point)
barre_vertical_droite(ppm,point)
point[0] += 36
barre_vertical_gauche(ppm,point)
barre_vertical_droite(ppm,point)
point[0] += 32
barre_horizontal(ppm, point)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment