Cours:ProcessingCouleurs

De troyesGEII
Aller à : navigation, rechercher

Retour vers la liste de TDs

Exercice 1 : Couleurs

Nous allons découvrir la gestion des couleurs dans processing.

Une couleur est entièrement définie par 3 paramètres. Diverses représentation sont possibles, nous nous intéresserons ici à la représentation RGB.

On initialisera l'espace de couleur par une ligne :

colorMode(RGB, nbValeurs);

Une couleur est donc représentée par un triplet (Rouge,Vert,Bleu), avec nbValeur pour chaque composante.

Le choix de la couleur s'effectue avec la fonction stroke

stroke(Rouge,Vert,Bleu);

Todo.jpg Exécuter le code suivant

colorMode(RGB, 100);
for (int i = 0; i < 100; i++)
{ 
  for (int j = 0; j < 100; j++)
  {
    stroke(i, j, 0);
    point(i, j);
  }
}

On prendra par la suite un écran de taille 400x200.

Question.jpg En vous inspirant du code précédent, tracez des lignes verticales dans un dégradé de bleu

Question.jpg Puis, tracez des lignes verticales dans un dégradé de vert

Question.jpg Faire ensuite un dégradé de rouge à partir de l'angle supérieur gauche dans les 2 directions


Exercice 2 : setup/draw

int i = 0;

void setup()
{
  noStroke();
  colorMode(RGB, 100);
}

void draw()
{
  for (int j = 0; j < 100; j++)
  {
    stroke(i, j, 0);
    point(i, j);
  }
  if (i==99) i=0; else i++;
}

Todo.jpg Exécuter le code précédent

Explications :

  • La fonction setup() est exécutée une seule fois au démarrage
  • La fonction draw est ensuite exécutée en boucle :
    Dès qu'elle est terminée, l'écran est mis à jour et on recommence la fonction draw().

Question.jpg Faire un programme qui remplit complètement l'écran en dégradés successifs de Bleu

Vous pouvez utiliser la fonction background.

Question.jpg Remplir ensuite l'écran avec un dégradé de Vert, et à chaque itération modifiez la quantité de Bleu

Exercice 3 : Déplacement

Question.jpg Faire un programme répondant au cahier des charges suivant :

  • Remplir l'écran en blanc
  • Définissez 2 variable posX et posY correspondant à la position d'une balle, que l'on initialise au milieu de l'écran
  • Tracez une balle (ellipse()) à ces coordonnées de couleur violette (regarder la fonction fill())
  • Déplacer la balle verticalement