π
<-

Animation Radar Python avec adaptation écran automatique

Animation Radar Python avec adaptation écran automatique

Unread postby critor » 31 May 2020, 20:31

Dans deux articles précédents, nous abordions le sujet d'une animation de radar initialement codée en Python pour Casio Graph 90+E, et de sa compatibilité avec l'ensemble des pythonnettes à l'aide de notre bibliothèque de compatibilité automatique PolyPyNet.

Juste à changer 1 ligne d'importation, et le script se mettait alors à marcher tout seul sur tous les modèles ! :bj:

12509Toutefois, les différents modèles ont des définitions d'écran différentes, et là pas de magie :


Effectivement, le script initial utilisait en dur les dimensions de la zone graphique Casio Graph 90+E, à savoir 384×192 pixels.

Une solution existe dans PolyPyNet, encore faut-il que l'auteur du script pense à l'utiliser dès le départ. A savoir les variables globales ppn_w et ppn_h qui indiquent les dimensions de la zone graphique.

Nous avons donc remplacé les différentes valeurs en dur par des appels à ces variables, et maintenant le même script tourne sur les différents modèles en s'adaptant automatiquement aux dimensions de l'écran ! :bj:
Nous avons même pu gérer au passage un affichage monochrome sur Casio Graph 35+E, en testant la variable globale ppn_has_color ! :D

Pour TI-83 Premium CE Edition Python, nous te conseillons toutefois de continuer à télécharger la version dédiée ci-après.

En effet d'une part le tas / heap Python extrêmement limité (à peine plus de 17K avant importation du module graphique) suffit à peine pour ce script, et donc autant s'affranchir de la taille mémoire occupée par la couche de compatibilité.

D'autre part, l'architecture particulière coprocesseur Python ↔ processeur eZ80 ↔ contrôleur écran est un autre facteur très limitant, avec au mieux dans les 49 événements écran par seconde.

Les boucles d'appel de setPixel() déclenchant autant d'événements de rafraîchissement que d'itérations, y sont remplacées à chaque fois que possible par les fonctions de tracé de primitives offertes à cette fin par le module ti_graphics, permettant le même rendu mais avec un seul événement matériel.

Téléchargements :
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41976
Images: 15730
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Animation Radar Python avec adaptation écran automatique

Unread postby cent20 » 31 May 2020, 23:39

Ça donne quoi les performances de cette version optimisée ? C’est fluide ?
Image
Enseignant de mathématiques et d'informatique. Spécialité NSI : Des projets, des tutos, mais aussi de l'art
Calculatrice NumWorks : Des applications et des jeux, scripts, 📙 Découvrir la NumWorks
User avatar
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 48.3%
 
Posts: 1047
Images: 67
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: nsi_xyz

Re: Animation Radar Python avec adaptation écran automatique

Unread postby marcel_p82 » 31 May 2020, 23:59

Bonjour!
Cette animation ma inspirée pour le jeu SONAR sur TI-Nspire CX II!
Marcel
User avatar
marcel_p82Programmeur
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Level up: 56%
 
Posts: 8
Joined: 19 Sep 2017, 13:31
Gender: Male
Calculator(s):
MyCalcs profile

Re: Animation Radar Python avec adaptation écran automatique

Unread postby critor » 01 Jun 2020, 17:57

Oui, j'ai vu passer. Rares sont les jeux à ce jour utilisant les nouvelles possibilités graphiques du TI-Basic Nspire en version 5.0+, et c'est d'autant plus remarquable. :)

Je ne manquerai pas d'en parler à l'occasion. ;)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41976
Images: 15730
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Animation Radar Python avec adaptation écran automatique

Unread postby critor » 01 Jun 2020, 18:56

cent20 wrote:Ça donne quoi les performances de cette version optimisée ? C’est fluide ?

Pas de changement de complexité, donc c'est comme la dernière fois.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41976
Images: 15730
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor


Return to News Divers

Who is online

Users browsing this forum: ClaudeBot [spider] and 9 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
732 utilisateurs:
>701 invités
>25 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)