
Il te suffisait de programmer sur ta calculatrice Casio ou son émulateur ta liste au Père Noël, avec 3 catégories au choix :
- catégorie étudiants : pour les participations individuelles d'élèves de collège ou lycée, avec à gagner 2 consoles de jeux Nintendo Switch
- catégorie professeurs : pour les participations individuelles des enseignant(e)s de matière scientifique en collège ou lycée, avec à gagner 2 trottinettes électriques
- catégorie classes : pour les participations collectives de classes de collège ou lycée, avec à gagner 2 gros lots constitués chacun de 5 calculatrices graphiques au choix (Graph 35+E II ou Graph 90+E) et un maximum de 36 montres Casio au choix pour le professeur et chacun des élèves (G-Shock classique GA-2100SKE-7AER ou Vintage A168WG-9EF)
Nous venons tout juste de te révéler les participations et gagnants sur fx-92+ Spéciale Collège ainsi que le lot de participation.
Aujourd'hui nous allons te présenter les créations conçues en Python sur Graph 90+E et Graph 35+E II, et bien évidemment te révéler au passage l'ensemble des gagnants.
Sommaire :
- Hors concours :
- Professeurs :
- Boucles d'oreilles (Céline G.)
- Liste manuscrite (Afyu)
- Lettre au Père Noël (Irène G.)
- Liste sur parchemin (Thomas)
- Classes :
- Etudiants :
- Input ta liste sur-mesures (Mathis B.)
Hors concours - Classpad III fx-CP600 - critor
Go to top
J'ai donc l'honneur et le plaisir de vous partager ma participation finale comme promis, préparée avec soin un petit peu chaque jour à compter de début décembre. Le script fait 1453 lignes et 73,717 Ko ; le script Python le plus gros jamais sorti sur machines Casio !

(et ce n'est pas demain la veille qu'il tournera sur les modèles de milieu de gamme concurrents...

Il s'agit non pas d'un simple dessin mais d'une véritable animation qui prend 15 minutes environ sur simulateur USB avant de boucler indéfiniment. Elle est à la gloire d'un future modèle haut de gamme, la Casio Classpad III fx-CP600 qui, je l'espère, aura une application Python avec une fonction get_key() dedans.
"Dessiner sa liste au Père Noël" je trouver cette consigne un petit peu trop terre à terre, trop concrète ; j'ai pensé faire l'original en y répondant de façon meta (ou mise en abyme si tu préfères) : sur l'écran de Graph 90+E je dessine donc une calculatrice fx-CP600, et sur l'écran dessiné de cette fx-CP600 je dessine les anciennes application Classpad ainsi que la nouvelle application Classpad Python. Si j'avais su, attends de voir les participations qui vont suivre...

L'animation commence par présenter la frise chronologique des modèles Casio Classpad couleur, avant de faire intervenir le Père Noël pour la livraison de la fx-CP600 :
Pour les affichages, j'ai codé une classe qui me sert de calque et permet ainsi :
- d'afficher un objet à différents endroits de l'écran
- d'afficher un objet sous forme zoomée/dézoomée
- d'afficher des rotations à 90° d'un objet
- d'animer des déplacements
- d'animer des zooms
Concernant les diverses images utilisées pour les calculatrices et leurs écrans, elles ont été conçues avec un logiciel de retouche d'images avant d'être converties en code Python pour Graph 90+E à l'aide de l'outil de conversion en ligne img2calc.
Concernant les inscriptions sous forme de texte, comme la méthode officielle
casioplot.draw_string()
ne permet ni les rotations ni les zooms j'ai dû tout refaire, c'est-à-dire recoder intégralement en Python la police de caractères. Ce fut d'ailleurs l'occasion d'inclure différentes tailles de polices, afin d'avoir un meilleur affichage en fonction du niveau de zoom. Il s'agit toutes de polices présentes sur Graph 35+E II ou Graph 90+E, extraites à l'aide d'un script Python à coups de get_pixel() :- 5 pixels de hauteur (police "small/medium" Graph 35+E II)
- 7 pixels de hauteur (police "large" Graph 35+E II)
- 10 pixels de hauteur (police "small" Graph 90+E)
Ces polices ont au passage été étendues de quelques caractères spéciaux absents qui étaient nécessaires ici.
Voici enfin une capture animée de ma participation ; ne pas hésiter à la jouer en vitesse x2 :
Télécharger le programme/code
Hors concours - Graph 90+E 3D - Lephe
Go to top
Afficher ses cadeaux sur une Graph 90+E, Lephe semble avoir pensé comme moi : c'est trop simple, trop concret, pas suffisamment 'meta' à son goût, il faut trouver un moyen de tordre la consigne, de se distinguer... Voici donc sur l'écran Graph 90+E le dessin d'une Graph 90+E, dont l'écran dessiné affiche à son tour les cadeaux !

Ici encore une animation mais quelle animation, la Graph 90+E étant en effet affichée en 3D. Il s'agit d'un moteur semi-complet avec rastérization de triangles (par Ninestars), textures, z-buffer, et effet d'assombrissement avec la profondeur.
L'affichage est certes petit mais c'est fait exprès ; cela permet à l'animation de se jouer sur calculatrice en un temps raisonnable, contrairement à la participation précédente qui cible le simulateur beaucoup plus rapide sur clé USB.
Les données brutes (RGB-888) d'une image 43×90 pixels fournie par le script img.py sont plaquées sur un pavé droit qui se met ensuite à tourner sous nos yeux émervéillés :
Télécharger le programme/code
Ce n'était ici pas dans le code, mais Lephe en a lui aussi profité pour demander une fonction get_key() en Python, tout ce qu'il nous manque pour pouvoir nous lancer dans la créations de jeux enfin 'jouables' :
Lephe wrote:Dans mon mail de participation j'ai indiqué en PS qu'on espérait toujours un getkey() en Python (un ajout qui ne prendrait qu'1 heure max à la R&D, j'en suis persuadé), et j'ai eu comme réponse que "C'est aussi bien noté pour l'ajout de getkey(), nous transmettons à la R&D." On croise les doigts
Hors concours - getkey() - ptitjoz
Go to top
Il en profite lui aussi pour leur transmettre un mystérieux message, GETKEY(). Décidément, nous sommes lourds cette année...

Professeurs - Boucles d'oreilles - Céline G.
Go to top

Elle utilise la bibliothèque turtle pour nous dessiner la paire de boucle d'oreilles de ses rêves. Rotations et zooms lui permettent d'enchaîner selon une courbe des étoiles de plus en plus grosses.
Le script a été conçu pour l'écran monochrome 128×64 pixels de la Graph 35+E II, mais peut également être lancé sur Graph 90+E couleur où afin de bien avoir les boucles d'oreilles affichées en entier.
Télécharger le programme/code
Professeurs - Liste manuscrite - Afyu
Go to topD'autant plus impressionnant que la tortue écrit et enchaîne les lettres littéralement sans lever le stylo, exactement comme si elle écrivait à la main, regarde bien la construction de l'animation :
Télécharger le programme/code
Mais sans doute était-il hors concours cette année puisqu'ayant déjà gagné l'année dernière...
Professeurs - Lettre au Père Noël - Irène G.
Go to top
Ayant enfin décidé d'être à l'heure à ses cours en 2022 elle souhaite se faire aider d'une montre Casio, et elle aimerait également un casque pour les cours en distanciel.
Télécharger le programme/code
Professeurs - Liste sur parchemin - Thomas
Go to top
Même si c'est très beau, techniquement son script se réduit à une simple image convertie avec img2calc. La valeur ajoutée en Python est donc faible et on peut comprendre que Casio n'ait pas retenu cette participation.
Télécharger le programme/code
Classes - Un matin de Noël à 10h42 - cent20
Go to top
Ici donc du grand art à la mesure de l'investissement de Casio dans cet événement ; le dessin est encore une fois animé.
cent20 wrote:Nous sommes le 25 décembre, il est précisément 10h42. Dehors il neige, d'ailleurs le bonhomme de Neige construit par les enfants la veille peut être aperçu à travers la fenêtre. Dans le salon, le feu a été attisé, il illumine la pièce pour permettre aux enfants d'ouvrir leurs cadeaux dans une ambiance chaleureuse. Le père noël, qui est passé la veille, a d'ailleurs oublié son bonnet à côté de la cheminée, mais heureusement il n'a pas oublié les cadeaux qui attendent d'être déballés au pied du sapin. Aujourd'hui, c'est Noël !
Tout petit léger détail, plusieurs appels
turtle.pensize()
au sein du script utilisent une épaisseur de crayon supérieure à 5, taille non supportée chez Casio. Dans ce cas à l'exécution, la taille est automatiquement ramenée à 5.Télécharger le programme/code
Etudiants - Input ta liste sur-mesures - Mathis B.
Go to top
Il se propose de dessiner non pas sa liste de Noël mais ta liste de Noël, une boucle d'
input()
t'en permettant la saisie. Serait-ce l'âme soeur de cent20, lui-même fan de print() ? 
Son script semble toutefois avoir été conçu et testé sur autre chose qu'une calculatrice Casio, le e tréma du mot Noël n'étant pas affiché sur calculatrice et provoquant même ici un bug d'affichage.
Télécharger le programme/code
Mieux que l'année dernière, la plupart des participants se sont visiblement donnés à fond, désintégrant littéralement les limites de ce qui avait pu être réalisé jusqu'alors en Python sur cette machine ! 
Nous trouvons que la chose est à la mesure des gros efforts consentis par Casio en terme de dotation pour cette nouvelle édition du concours de Noël.
Merci donc Casio pour ce superbe concours fort généreusement doté qui a permis la création de tant de belles choses, un événement qui sera à notre avis à reproduire !

Nous trouvons que la chose est à la mesure des gros efforts consentis par Casio en terme de dotation pour cette nouvelle édition du concours de Noël.
Merci donc Casio pour ce superbe concours fort généreusement doté qui a permis la création de tant de belles choses, un événement qui sera à notre avis à reproduire !

Source : https://www.casio-education.fr/contenus ... grammation