Page 1 of 1

Résultats+scripts concours dessin Noël 2021 Python

Unread postPosted: 15 Feb 2022, 12:39
by critor
Collègien(ne), lycéen(ne) ou enseignant(e), jusqu'au lundi 31 janvier Casio t'avait permis de participer à son concours de Noël 2021.

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)
2 gros lots à gagner dans chaque catégorie donc, un pour le meilleur dessin réalisé sur fx-92+ Spéciale Collège avec l'application Algorithmique, et un pour le meilleur dessin réalisé sur Graph 35+E II ou Graph 90+E avec l'application Python.

15212Et en prime avec Casio, pas de perdant : lot de goodies Casio pour tous les autres participants !
1432714658


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 - Classpad III fx-CP600 - critor

Go to top

J'ai envoyé une participation pour représenter TI-Planet le soir de la date butoir initiale, en précisant bien que c'était pour le plaisir. Je ne souhaite en effet piquer de gros lots à personne ; même si il s'agit de très grots lots, il n'y en a que 6.

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 ! :D
(et ce n'est pas demain la veille qu'il tournera sur les modèles de milieu de gamme concurrents... :P)

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)
Maintenant que les données de polices sont directement dans notre script, on peut effectivement les afficher comme on veut, selon différents niveaux de zoom ou différentes orientations.
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

15178Lephe a également envoyé quelque chose pour représenter Planète Casio. Participation hors concours puisque n'étant plus lycéen, et pas (encore ?...) enseignant. ;)

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 ! :P

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

ptitjoz n'ayant lui plus le privilège d'être élève et pas encore celui d'être enseignant, a malgré tout fait l'effort d'adresser pour le plaisir à Casio une participation hors concours en Python sur Graph 90+E.

Il en profite lui aussi pour leur transmettre un mystérieux message, GETKEY(). Décidément, nous sommes lourds cette année... :troll:




Professeurs - Boucles d'oreilles - Céline G.

Go to top

Céline G. est la grande gagnante parmi toutes les participations d'enseignants.

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 top

15220Visiblement, je ne suis pas le seul à m'être retapé tout l'alphabet pour ce concours. En effet Florian Allard alias Afyu chez nous, enseignant en Mathématiques, a quant à lui conçu sa liste de Noël en écriture manuscrite pour la bibliothèque turtle de la Graph 90+E, et ici encore la chose est animée.

D'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

Irène G., également enseignante, ne s'est pas contentée d'une simple liste mais a écrit une véritable lettre au Père Noël, également avec la bibliothèque turtle.

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

Thomas, lui aussi enseignant, a écrit sa liste de Noël sur un parchemin dans un superbe décor. Outre quelques petits cadeaux Casio pour lui sa liste se distingue par son altruisme, souhaitant la fin de l'épidémie et la création de postes en Mathématiques afin de compenser le saccage en cours de cet enseignement.

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

15179cent20, enseignant en Mathématiques et NSI au lycée privé catholique Louis Pasteur à Avignon, a brillamment oeuvré pour que la production de sa classe soit prête dès la date butoir initiale du 7 janvier. Il a en effet demandé à ses élèves de réaliser chacun un petit dessin en DM pendant les vacances de Noël, avec la contrainte qu'il soit compatible avec la bibliothèque turtle de la Graph 90+E. Une fois les DM remis, il lui a suffi de sélectionner les meilleures productions et les intégrer à un unique script. Un grand stratège que ce cent20, ce qui lui vaut une victoire hautement méritée ! :bj:

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

Mathis B. est le grand vainqueur de la catégorie étudiants.

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 ! :#tritop#:

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 ! :favorite:

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

Re: Résultats+scripts concours dessin Noël 2021 Python

Unread postPosted: 15 Feb 2022, 14:29
by cent20
il lui a suffi de sélectionner les meilleures productions et les intégrer à un unique script.


ça c'est pour la théorie, en pratique c'est plus d'une dizaine d'heure pour tester et assembler les productions, les élèves ayant débugué à la truelle et parfois oublié de préciser avec quels paramètres appeler leurs fonctions. Heureusement j'ai embauché un élève pour m'assister dans cette tâche que j'avais sous estimée.



J'avoue que je ne m'attendais pas à de si belles productions dans la catégorie enseignant, d'ailleurs j'aurais bien aimé que toutes les productions soient publiées par Casio, celle de Thomas étant par exemple introuvable sur la page officielle dédiée au résultats, donc la publier ici est un beau tour de magie de la part de tiplanet.

Du coup je pense que ma victoire est probablement du à la catégorie dans laquelle nous avons envoyé notre participation, la catégorie "classe" en python n'aurait pas rencontré un succès mérité compte tenu d'une part de la générosité de la dotation, et d'autre part du caractère obligatoire de l'enseignement de python en lycée !

Si vous avez participé et que vous n'avez pas été sélectionné par Casio, envoyez vos productions à tiplanet, je suis certain que Xavier se fera un plaisir d'ajouter vos productions à cet article.

Re: Résultats+scripts concours dessin Noël 2021 Python

Unread postPosted: 07 Mar 2022, 15:48
by critor
Les superbes lots classe, un peu plus complexes à composer, viennent enfin d'être livrés eux aussi.

cent20 et ses disciples nous partagent donc leur trophée : :favorite: