Cours:ProcessingEval1

De troyesGEII
Aller à : navigation, rechercher

Cours:ProcessingEval1Correction

Vous ferez valider chaque partie

Première partie, préparation

Création de l'écran

Question.jpg Commencer votre programme en implantant les fonctions répondant au cahier des charges suivant :

  • Définir 2 constantes (cd final) Tx et Ty de valeurs 600 et 400, qui représenteront la taille de la fenêtre.
  • Créer un écran de cette taille
  • Le remplir en noir

Une balle maintenant

Question.jpg Ajouter à votre programme les instructions nécessaire à la création d'une balle :

  • Définir une constante représentant le diamètre de la balle : d = 20
  • Définir 2 variables, posX et posY donnant les coordonnées du centre de la balle
  • Placer cette balle, de couleur rouge, au centre de l'écran.

Deuxième partie : animons la balle

Sans rebond

Question.jpg Commencez par faire un programme qui déplace la balle sans gestion des rebonds sur les bords :

  • Définir 2 variables Vx et Vy de valeur initiale 5.
  • A chaque "boucle", incrémenter en conséquence la position de la balle


Gestion des bords

Question.jpg Faisons rebondir la balle sur des bords :

  • Définissez 4 variables : minX, minY, maxX, maxY de valeurs initiales respectives 0,0,Tx,Ty
  • A l'aide des tests adaptés, faire en sorte que la balle rebondisse sur ces positions (minX, minY ...)

Troisième partie : Gestion de la souris

Tirons un trait

On souhaite tracer un trait vertical de haut en bas de l'écran à chaque clic gauche de souris à l'emplacement de la souris.

Vous utiliserez pour ce faire la fonction mousePressed()

Question.jpg Écrire le programme correspondant

Vertical ou horizontal

On souhaite maintenant pouvoir changer le sens de la ligne. Pour ce faire :

  • déclarer une variable sens (0 comme valeur initiale)
  • a chaque clic droit, "sens" changera de valeur (0 pour vertical, 1 pour horizontal)
  • tenir compte de la valeur de "sens" pour tracer la ligne

Question.jpg Codez !

Quatrième partie : Assemblons le tout

Réduction de l'espace de rebond

L'objectif est d'utiliser la souris pour réduire progressivement l'espace de rebond de la balle :

  • Supposons que la balle est en position 200,300 ( ou 270,300)
  • Que la souris est en position 250,100
  • Que sens=0 (trait vertical)
  • Alors on réduit la valeur de maxX à 250 (On passe minX à 250)

Le même principe s'applique aux valeurs minY et maxY lorsque sens=1

Question.jpg Faire les modifications nécessaires

Améliorons le graphisme

Question.jpg Ne laisser en noir que la zone autorisée pour la balle

Réduction obligatoire de la taille de la zone

Question.jpg Ajouter les conditions nécessaires pour que la taille de la zone soit nécessairement de plus en plus petite


Cinquième partie : Plusieurs balles

Il vous reste du temps, essayez d'adapter votre programme pour gérer plusieurs balles simultanément.