Sujet 1 :
Introduction à l’art génératif - Dessiner des formes géométriques

Objectifs

Voici les connaissances abordées dans ce cours.

  • Apprendre à dessiner des formes basiques dans un <canvas>
  • Appréhender des notions de base en programmation : fonctions et boucles

Mots-clefs

Brief

Votre travail sur ce sujet se fera en deux étapes. Vous allez tout d’abord compléter trois exercices afin de vous familiariser avec la création de formes basiques (rectangle, cercle, triangle) au sein d’un <canvas>. Vous utiliserez ensuite ces trois formes pour créer votre propre composition.

Exercice 1 : Le rectangle

Reproduire le visuel suivant en se basant sur l’exemple fourni.

François Morellet — « Album de 10 sérigraphies sur 10 ans », 1975

Exemple : dessiner un rectangle rouge

context.fillStyle = "red"
context.fillRect(4.5, 7, 12, 7)

Documentation

Définir la couleur de remplissage

context.fillStyle = "couleur"

La couleur doit être marquée en anglais.

Dessiner un rectangle

context.fillRect(x, y, largeur, hauteur)

ParamètreDescription
xPosition sur l’axe x du coin supérieur gauche du rectangle
yPosition sur l’axe y du coin supérieur gauche du rectangle
largeurLargeur du rectangle
hauteurHauteur du rectangle

Exercice 2 : Le cercle

Reproduire le visuel suivant en se basant sur l’exemple fourni.

Sol LeWitt — « Wall Drawing #462 », 1986

Exemple : dessiner un cercle avec une bordure verte

context.strokeStyle = "green"
context.lineWidth = 0.5
context.beginPath()
context.arc(10.5, 10.5, 5, 0, Math.PI * 2)
context.stroke()

Math.PI * 2 rad équivaut à 360°.

Documentation

Définir la couleur de la bordure

context.strokeStyle = "couleur"

Définir la largeur de la bordure

context.lineWidth = largeurBordure

Commencer le tracé

context.beginPath()

Dessiner un cercle

context.arc(x, y, rayon, angleDebut, angleFin)

ParamètreDescription
xPosition sur l’axe x du centre de l’arc de cercle
yPosition sur l’axe y du centre de l’arc de cercle
rayonRayon de l’arc de cercle
angleDebutAngle depuis lequel l’arc de cercle commence, mesuré en radians dans le sens des aiguilles d’une montre
angleFinAngle auquel l’arc de cercle s'arrête, mesuré en radians dans le sens des aiguilles d’une montre

Fermer le tracé

context.stroke()

Exercice 3 : Le triangle

Reproduire le visuel suivant en se basant sur l’exemple fourni.

Sol LeWitt — « Color Bands », 2000

Exemple : dessiner un triangle bleu

context.fillStyle = "blue"
context.beginPath()
context.moveTo(6.5, 8)
context.lineTo(14.5, 8)
context.lineTo(10.5, 15)
context.fill()

Documentation

Déplacer le curseur aux coordonnées x et y données

context.moveTo(x, y)

ParamètreDescription
xCoordonnée du curseur sur l’axe x
yCoordonnée du curseur sur l’axe y

Tracer un segment depuis la dernière position du curseur jusqu’aux coordonnées x et y données

context.lineTo(x, y)

ParamètreDescription
xCoordonnée du point sur l’axe x
yCoordonnée du point sur l’axe y

Fermer le tracé

context.fill()

Notation

/20
/6Exercices 1, 2 et 3 : concordance entre le visuel modèle et le rendu
/6Qualité et équilibre de la composition finale
/4Composition mettant en scène des rectangles, des cercles et des triangles
/4Utilisation de formes avec remplissage (fill) et avec bordure (stroke)