Dessin d'art optique avec deformation surpython
lildeal
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
"""
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)
inf_gauche=int(input())
sup_droit=int(input())
longueur=int(input())
col1='red'
col2='blue'
col3='black'
col=(col1, col2, col3)
centre1=int(input())
centre2=int(input())
centre3=int(input())
centre=(centre1, centre2, centre3)
rayon=int(input())
s'il vous plait besoin d'aide c'est pour mon projet de fin de formation a remettre lundi
A voir également:
- Dessin d'art optique avec deformation surpython
- Dessin clavier zizi ✓ - Forum Programmation
- Word art - Télécharger - Bureautique
- Album art downloader - Télécharger - Outils Internet
- Logiciel dessin technique gratuit - Télécharger - CAO-DAO
- Dessin chat twitch ✓ - Forum Mail