lildeal
Messages postés1Date d'inscriptiondimanche 27 octobre 2019StatutMembreDernière intervention27 octobre 2019
-
27 oct. 2019 à 01:31
Utilisateur anonyme -
10 nov. 2019 à 18:52
"""
projet de fin de formation du MOOC apprendre a programmer avec python
fait par Engelbert Modo
le 26 octobre 2019
le programme produit des tableaux d'art optique representé par des figures geometrique avec differentes
couleurs et deformations elles sera faite
"""
import turtle
from math import cos, sin, pi
import deformation
def hexagone(coordonnee, longueur, col, centre, rayon):
turtle.speed(0)
turtle.up()
x=coordonnee[0] #coordonnee d'origine du premier cube corespondant au coin inferieur gauche
y=coordonnee[1]#coin superieur droite de la fenetre du dessin
p=(x, y, 0)
turtle.goto(x,y)
turtle.down()
#dessin de la premiere face du cube
turtle.color(col[0])
turtle.begin_fill()
x=x+longueur*(cos(0))
y=y+longueur*(sin(0))
p=(x,y,0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-1*pi/3))
y=y+longueur*(cos(-1*pi/3))
p=(x, y,0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-1*pi))
y=y+longueur*(sin(-1*pi))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-120*pi/180))
y=y+longueur*(sin(120*pi/180))
p=(x, y, 0)
pprim=(deformation(p, centre, rayon))
turtle.goto(pprim[0], pprim[1])
turtle.end_fill()
turtle.mainloop()
# dessin de la deuxieme face du cube
turtle.color(col[1])
turtle.begin_fill()
x=x+longueur*(cos(-60*pi/180))
y=y+longueur*(sin(-60*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-120*pi/180))
y=y+longueur*((sin-120*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-240*pi/180))
y=y+longueur*(sin(-240*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(60*pi/180))
y=y+longueur*(sin(60*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
turtle.end_fill()
# dessin de la troisieme face du cube
turtle.color(col[2])
turtle.down()
turtle.begin_fill()
x=x+longueur*(cos(0*pi/180))
y=y+longueur*(sin(0*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-120*pi/180))
y=y+longueur*(sin(-120*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(-180*pi/180))
y=y+longueur*(sin(-180*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
x=x+longueur*(cos(60*pi/180))
y=y+longueur*(sin(60*pi/180))
p=(x, y, 0)
pprim=deformation(p, centre, rayon)
turtle.goto(pprim[0], pprim[1])
turtle.end_fill()
turtle.mainloop()
#fonction pavage qui dessine des paves du cube
def pavage(inf_gauche, sup_droit, longueur, col, centre, rayon):
n=1 #cnombre de ligne du polygone
angle=pi/3
sup_droit1=sup_droit #qui est la nouvelle position du polygone apres chaque ligne
pas=3*longueur #espace entre deux polygone
new_inf_gauche=int(inf_gauche-longueur*(1+cos(angle)))# position de depart pour les lignes paire
new_sup_droit=int(sup_droit+longueur*(1+cos(angle))) #positions finale
while(sup_droit1>inf_gauche):
if(n%2!=0):
for x in range(inf_gauche, sup_droit, pas):
coordonnee=(x, sup_droit1)
print(coordonnee)
hexagone(coordonnee, longueur, col, centre, rayon)
n+=1
else:
for x in range(new_inf_gauche, new_sup_droit, pas):
coordonnee=(x, sup_droit1)
hexagone(coordonnee, longueur, col, centre, rayon)
n+=1
sup_droit1=sup_droit1-longueur*sin(angle)
turtle.done()
pavage(inf_gauche, sup_droit, longueur, col, centre, rayon)
bonsoir, peux tu mettre ton code python dans une balise <code> comme ça il y aura les tabulations et c'est quoi dans ton code IMPORT deformation et je n'ai pas compris ton problème !