TI-Connect CE 6.0 : conversion scripts et images Python
![Unread post Unread post](/forum/styles/prosilver/imageset/icon_post_target_unread.gif)
![](https://i.imgur.com/RxHCVUrt.png)
Mais ce qui est suprenant c'est surtout le numéro de version du logiciel, qui habituellement suivait la numérotation des mises à jour de calculatrices. Nous passons en effet de la version 5.6.3 qui était sortie pour la rentrée 2021 avec le support de la nouvelle TI-82 Advanced Edition Python, à une version 6.0.
Or la TI-82 Advanced Edition Python est restée depuis en version 5.6.3, pendant que les TI-83 Premium CE et TI-84 Plus CE viennent à peine de passer à la version 5.8.
Un saut de version aussi important, c'est curieux hors contexte de toute sortie d'un nouveau modèle ou d'une mise à jour majeure de calculatrice.
Tentons donc de creuser les nouveautés.
Les scripts Python que tu transférais vers ta calculatrice TI-83 Premium CE ou TI-84 Plus CE pouvaient être sous deux formats différents :
- le format .py issu de n'importe quel outil de concetpion Python
- le format .8xv de Texas Instruments pour les variables d'applications
Mais inversement, lorsque tu faisais ressortir des scripts depuis ta calculatrice, tu les obtenais obligatoirement au format .8xv, pour lequel il n'existe aucun lecteur autre que la calculatrice et aucun convertisseur non plus.
C'est-à-dire qu'ils ne pouvaient pas être édités ni même utilisés dans un autre environnement Python. Et c'était particulièrement embêtant pour les scripts dont tu ne disposais d'aucune copie sous un autre format, par exemple parce que tu les avais saisis directement sur la calculatrice.![:'( :'(](./images/smilies/crying.png)
C'est-à-dire qu'ils ne pouvaient pas être édités ni même utilisés dans un autre environnement Python. Et c'était particulièrement embêtant pour les scripts dont tu ne disposais d'aucune copie sous un autre format, par exemple parce que tu les avais saisis directement sur la calculatrice.
![:'( :'(](./images/smilies/crying.png)
![](https://i.imgur.com/4LdB2Vdt.png)
Désormais, lorsque tu exporte un script Python de ta calculatrice, TI-Connect CE te donne enfin le choix du format d'enregistrement : .8xv ou .py !
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![](https://i.imgur.com/vHhEYMLt.png)
- pixel -
setPixel(x,y)
- texte -
drawString(text,x,y)
- ligne -
drawLine(x1,y1,x2,y2)
- ligne brisée et polygone -
drawPolyLine([(x1,y1),(x2,y2),...,(xn,yn)])
etfillPolygone([(x1,y1),(x2,y2),...,(xn,yn)])
- rectangle et rectangle plein -
drawRect(x,y,largeur,hauteur)
etfillRect(x,y,dx,dy)
- disque -
fillCircle(x,y,r)
- arc et secteur d'ellipse -
drawArc(x,y,dx,dy,t1,t2)
etfillArc(x,y,dx,dy,t1,t2)
La couleur se règle via
setColor([r,g,b])
en RGB-888, pour un affichage effectif en RGB-565 sur l'écran de la calculatrice.setPen(taille,type)
permet également de régler le stylo, l'épaisseur du trait ainsi que son style : continu ou en pointillés.ti_graphics est de loin la bibliothèque Python de tracé par pixels la plus complète toute concurrence confondue. C'est de plus une véritable pépite pédagogique, avec le gros avantage de permettre dès la Seconde d'aborder et mener à bien des projets graphiques ambitieux en un minimum de lignes, sans avoir à traiter au préalable l'intégralité des notions mathématiques ou algorithmiques qu'il y a derrière tout cela !
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![](https://i.imgur.com/NvHRKyWt.png)
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Ici encore nul besoin d'attendre le chapitre sur le codage des images, une seule ligne suffit dès la Seconde :
drawimage("nom",x,y)
. Cet appel va alors chercher en mémoire la variable d'application nom.8xv pour l'afficher.Pour enrichir ainsi tes projets, Texas Instruments t'avait partagé une banque de 14 images libres.
Ces images utilisent un format IM8C que nous t'avions analysé et documenté :
- Les images utilisent une palette d'au plus 256 couleurs, dont éventuellement 1 couleur transparente.
- Les données des pixels ainsi indexées sont compressées au format RLE.
Toutefois fallait-il déjà être capable de produire des images au format IM8C en question, et aucun outil de conversion officiel n'était disponible jusqu'à présent.
Aussi t'avions-nous intégré le support de ce format à notre outil de conversion en ligne img2calc.
![](https://i.imgur.com/CXnDMFJt.png)
Et bien nouveauté, la conversion d'images au format IM8C des scripts Python pour TI-83 Premium CE et TI-84 Plus CE est maintenant supportée !
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Pour y accéder, dans la liste déroulante de la boîte de dialogue, il te suffit de choisir Image Python au lieu d'un des 10 noms de fonds d'écran.
![](https://i.imgur.com/WSbFtMQt.png)
- permettant de choisir le nom que prendra l'image sur la calculatrice
- indiquant des règles de nommage (imposant une écriture en lettres capitales, contrairement à img2calc)
- rappelant les dimensions originales de l'image soumise
- permettant de préciser les dimensions souhaitées sur calculatrice, tout en rappelant la taille maximum de 320×210 pixels
![](https://i.imgur.com/anQyUm8.png)
![](https://i.imgur.com/kbjNdl1t.jpg)
- ZELDAB : une image de fond d'écran de 800×450 pixels en 94570 couleurs, que les deux outils passent en 320×180 pixels
- ZELDAF : une image de premier plan de 1000×933 pixels en 80570 couleurs avec transparence, que les deux outils passent en 225×210 pixels
![](https://i.imgur.com/XQGBHlbt.png)
![](https://i.imgur.com/fsnkeYHt.png)
- Code: Select all
from ti_graphics import *
from ti_system import *
drawImage("ZELDAB", 0, 30)
drawImage("ZELDAF", 0, 30)
disp_wait()
Déjà, premier problème évident avec TI-Connect CE, la transparence pourtant supportée par le format IM8C conçu par Texas Instruments, n'est visiblement pas gérée correctement au niveau du convertisseur.
À y regarder de plus près, on peut également noter des différences globales sur ce genre d'images, les algorithmes de réduction en pixels et en couleurs n'étant bien évidemment pas les mêmes pour les deux outils, on pouvait s'attendre à ce qu'ils génèrent des palettes de couleurs différentes..
![](https://i.imgur.com/QWJIQykt.png)
![:o :o](./images/smilies/surprise.png)
- ZELDAB occupe non pas 47,453 Ko mais 54,821 Ko (+15,53%)
- ZELDAF occupe non pas 14,411 Ko mais 15,795 Ko (+9,60%)
Ce n'est probablement pas la seule, mais nous trouvons rapidement une des explications de cette hausse dans la palette de couleurs, plus importante avec TI-Connect CE :
- ZELDAB définit non pas 252 mais 254 couleurs, mais quel gapillage quand on se rend compte finalement que l'image n'affiche que 221 couleurs différentes !
- ZELDAF définit non pas 248 mais le maximum de 256 couleurs, pour de façon absolument ridicule n'afficher que 157 couleurs différentes !
À mieux regarder les fichiers obtenus à l'éditeur hexadécimal, nous pensons comprendre le problème avec TI-Connect CE. En fait ce n'est pas que la palette contient des couleurs jamais affichées, mais c'est qu'elle contient plein de couleurs absolument identiques, ce qui certes gaspille un petit peu de place, mais est surtout un éparpillement sabotant littéralement la compression RLE.
![Pas bien! :mj:](./images/smilies/sg3agmjg3ag.gif)
Nous pensons donc que l'équipe de développement, peut-être prise par le temps, a commis les erreurs de :
- rechercher la palette de couleurs optimale non pas en directement en RGB565 (16 bits) mais en RGB888 (24 bits), et effectivement lorsque l'on passe ensuite au format 16 bits les couleurs trop proches peuvent devenir identiques
- ne pas supprimer les doublons en découlant de la palette RGB565 obtenue
L'affichage précédent ayant raté avec les conversions TI-Connect CE, nous te laissons de quoi te permettre de comparer toi-même séparément les images converties :
Nous ne pouvons que saluer une belle évolution de TI-Connect CE allant enfin dans le bon sens pour faciliter la création de projets Python, la mettant ainsi à portée de tout-le-monde. ![:) :)](./images/smilies/smile.png)
La conversion d'images au format IM8C mériterait certes d'être retravaillée concernant le support de la transparence ainsi que le gaspillage significatif et inutile d'espace mémoire.
Mais quelque chose nous tracasse ; nous avons malgré tout l'impression de passer à côté d'une nouveauté majeure avec ce saut de version à 6.0...
![:) :)](./images/smilies/smile.png)
La conversion d'images au format IM8C mériterait certes d'être retravaillée concernant le support de la transparence ainsi que le gaspillage significatif et inutile d'espace mémoire.
Mais quelque chose nous tracasse ; nous avons malgré tout l'impression de passer à côté d'une nouveauté majeure avec ce saut de version à 6.0...
Téléchargement : TI-Connect CE 6.0 pour Windows Mac