Un accord céleste

Projets

La musique occupe une place centrale dans la vie contemporaine, transcendant les frontières culturelles et générant des émotions universelles. De nos jours, elle est omniprésente, accompagnant nos moments forts et ponctuant notre quotidien grâce à la facilité d’accès aux plateformes numériques. Au-delà d’un simple divertissement, la musique forge des identités, crée des communautés et offre un refuge émotionnel, devenant ainsi une véritable toile sonore de nos vies modernes.

Pourquoi cet accord ?

Il s’agit d’un do majeur 7 add 11 (Cmaj7add11). C’est un accord rarement utilisé en musique, il est le plus souvent utilisé dans le Jazz. Cet accord est beau à entendre car il est très coloré. Il s’agit d’un accord à 5 notes./

Pourquoi un accord ?

Nous avons choisi de représenter un accord sur une portée car nous sommes tous les trois reliés par la musique. Lowan et Loris faisant principalement du piano et Maceo de la guitare. Nous faisons tous les trois partie de l’option musique qui est l’option la plus intéressante du lycée proposée par l’un des meilleurs professeurs Monsieur CLÉMENTE. Pour cela Nous avons d’abord dessiné La portée à l’aide de ce code ci : 

def draw_staff():
    for i in range(5):
        penup()
        goto(-200, 50 - i * 20)
        pendown()
        forward(400)


def draw_note(x, y):
    penup()
    goto(x, y)
    pendown()
    circle(10)

draw_staff()

On a défini une fonction draw_staff où l’on a intégré une boucle de sorte à ce que la tortue fasse la première ligne, puis reviennent au point de départ pour ensuite descendre et répéter cette opération se répétera 4 autres fois car sur une portée il y a 5 lignes.

pensize(5)
seth(115)
circle(-30, 220)
circle(-50, 220)
forward(70)
circle(50,100)
seth(-145)
circle(50, 58)
forward(200)
circle(-30, 180)
begin_fill()
circle(-10)
end_fill()
hideturtle()

ensuite nous avons dessiné la clef de sol à l’aide de ce code ci-dessus. On a d’abord commencé par définir la taille de la clef et mis les valeurs correspondantes pour faire les bonnes boucles.

Pourquoi ce fond ?

Pour le fond nous avons représenté des étoiles aléatoirement disposées sur un fond dégradé bleu et noir qui représente le ciel. Nous nous sommes inspirés de l’album Geography de Tom Misch puis nous avons changé les couleurs pour arriver à un dégradé de couleur bleu. Nous nous sommes inspirés du travail d’un première de la spécialité NSI.

Album de Tom Misch : https://www.youtube.com/watch?v=dA9mzvPtp5I

goto(-400, -300)
pendown()

for i in range(600):
    pencolor(0,0, 255-round((i/(600/255))))
    forward(800)
    goto(-400,-300+i)

Analyse du script :

Le script se divise en 3 parties : Il y a la première partie, les étoiles sur le fond dégradé, ensuite par dessus nous avons rajouté la portée blanche avec les notes et pour terminer une clef de sol.

Le rendu final du script : 

voici l’entièreté de notre script python qui va générer notre image ; « l’accord céleste »

from turtle import *
from random import *
Screen()
setup(800, 600)
penup()
colormode(255)
speed(0)
goto(-400, -300)
pendown()

for i in range(600):
    pencolor(0,0, 255-round((i/(600/255))))
    forward(800)
    goto(-400,-300+i)
color("white")
def etoile(taille):
  for i in range(5):
    pensize(uniform(0.1, 2.5))
    forward(taille)
    right(144)
for i in range(200):
  x = randint(-400, 400)
  y = randint(-250, 250)
  couleur = randint(0, 2)
  if couleur == 0:
    color("#D68B0F")
  elif couleur == 1:
    color("#EBEBAB")
  else :
    color("#A7C706")
  penup()
  goto(x, y)
  pendown()
  taille = uniform(0.1, 2)
  etoile(taille)


shape("arrow")
color("white")
speed(0)

def draw_staff():
    for i in range(5):
        penup()
        goto(-200, 50 - i * 20)
        pendown()
        forward(400)


def draw_note(x, y):
    penup()
    goto(x, y)
    pendown()
    circle(10)

draw_staff()


draw_note(-150, -30)
penup()
goto(-159, -30)
pendown()
setheading(270)
backward(100)


draw_note(-100, 10)
penup()
goto(-100, 10)
pendown()
setheading(270)
backward(100)

draw_note(-50, -10)
penup()
goto(-50, -10)
pendown()
setheading(270)
backward(100)

draw_note(0, -30)
penup()
goto(0, -30)
pendown()
setheading(270)
backward(100)

draw_note(50, -50)
penup()
goto(50, -50)
pendown()
setheading(270)
backward(100)
penup()
goto(-159, 70)
pendown()
left(124)
forward(71)
penup()
goto(-300, 0)
pendown()

pensize(5)
seth(115)
circle(-30, 220)
circle(-50, 220)
forward(70)
circle(50,100)
seth(-145)
circle(50, 58)
forward(200)
circle(-30, 180)
begin_fill()
circle(-10)
end_fill()
hideturtle()