9 - Projet : Décor aléatoire
Logiciel nécessaire pour l'activité : Python 3 : Thonny, IDLE ... mais en ayant installé le module Pyxel
1 - Description du projet
Objectifs à atteindre
- Choisir un thème : Le Père Noël, la Reine des Neiges,
- Réaliser RAPIDEMENT un prototype (moche, ne cherchez pas à réaliser un truc avec de beaux graphismes pour le moment) basé sur Turtle qui permette d'afficher
- un fond lié clairement au thème (sol, ciel et quelques éléments typiques comme une montage pour la Reine des Neiges ou une explosion atomique pour du post-apocalyptique...)
- le personnage principal (Père Noël, Reine des Neiges...)
- un personnage ou objet secondaire (sapin de Noël, bonhomme de neige...)
- 3 fois le même objet caractéristique du thème (des cadeaux, des flacons de neige, des cerisers en fleur pour le Japon...)
- Une fois que le prototype est opérationnel, rajoutez ces fonctionnalités :
- Sur un clic gauche, on affiche un nouvel objet caractéristique à l'endroit où on vient de cliquer. Renseignez-vous sur la fonction onscreenclick :
- Sur un clic droit, on rajoute un personnage secondaire (un lutin, un ninja, un pirate...
- Sur un clic molette, on enregistre l'image obtenue (en utilisant la méthode suivante par exemple)
- Les coordonnées, couleurs et autres caractéristiques des trois objets basiques et ceux qu'on rajoute ensuite sur un clic droit devront être stockés en mémoire dans un tableau ou un dictionnaire. Et chacune de ces structures devra être stockées elle-même dans un tableau de 10 cases. Ainsi, on devra pouvoir récupérer les données des cadeaux, des montages ou des cerisiers.
L'affichage devra être aléatoire en partie : positions semi-aléatoires, couleurs aléatoires, personnage principal aléatoire, de jour, de nuit...)
1 |
|
Votre fonction ajoute_cerisier devra avoir un prototype de ce type, capable de récupérer les coordonnées de la souris au moment où le clic se produit :
1 |
|
1
2 |
|
Contraintes de programmation
- Le programme devra utiliser le module turtle et le module random
- Il devra respecter la structure d'un programme :
- Importation
- Variables globales et constantes
- Définitions des fonctions
- Le programme en lui-même qui doit être facilement lisible : on doit avoir des noms de fonctions permettant de comprendre ce qu'elles réalisent sans même nécessairement aller lire leurs codes.
- Les fonctions doivent réaliser une chose et ne doivent donc pas faire 300 lignes !
- Si on doit faire plusieurs la même chose à la suite, on utilise une boucle.
- Au moins quelques utilisations de if elif else.
- Votre programme principal devra être le plus court possible : le maximum de choses devra être encapsulé dans des fonctions.
2 - FAQ
Activité publiée le 15 12 2024
Dernière modification : 15 12 2024
Auteur : ows. h.