π
<-

Aide Lua

Pour TI-Nspire OS 3.0 ou ultérieur.

Re: Aide Lua

Unread postby Levak » 07 Jul 2011, 18:10

A par une condition moche, il n'y en a pas.

Par condition moche, j'entends :

function on.paint(gc)
if not mouse then
-- do normal stuff here
end
mouse = false
end

function on.mouseMove(x, y)
mouse = true
end

Et encore, j'ai pas testé.

C'est quoi le problème en fait ? Tu te trompes peut être de méthode pour appliquer un principe qui doit être retranscrit en évènementiel.
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
User avatar
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 98.9%
 
Posts: 6414
Images: 22
Joined: 27 Nov 2008, 00:00
Location: 0x1AACC355
Gender: Male
Calculator(s):
MyCalcs profile
Class: BAC+5: Epita (ING3)

Re: Aide Lua

Unread postby Loulou 54 » 07 Jul 2011, 19:46

Ah ça peut ptèt être pas mal.
Je fais une animation un peu similaire à celle présentée dans un des tutoriels de Inspired Lua. (et le problème est aussi présent dans l'exemple !)
Il s'agit de l'animation qui compte.
Code: Select all
x = 1
animating = false
function on.paint(gc)
   gc:setFont("sansserif", "r", 10)
   gc:drawString(tostring(x), 0, 0, "top")
   if animating then
      x = x + 1
      timer.start(0.5)
   end
end

function on.charIn(ch)
   animating = not animating -- switch state
   platform.window:invalidate() -- recall graph engine
end

function on.timer()
   timer.stop()
   platform.window:invalidate() -- recall graph engine
end


Et bien quand tu bouges la souris : ça compte tout vite parce-que ça rappelle on.paint !

Comment contourner ça ? (au pire c'est pas bien grave)

2è question :
Pour le timer, comment fonctionne-t-il véritablement ?
Qu'est-ce que la période du timer ?
J'arrive à faire une animation par "étapes" grâce au timer, mais je n'arrive pas à faire un délai !
Comment faire une attente avec le timer ? ^^

Merci bien ! :D:
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Re: Aide Lua

Unread postby Levak » 07 Jul 2011, 19:50

Ah, ok, je vois.

Le problème là, c'est que si tu empêches d'incrémenter pendant que la souris bouge, ça fera l'effet inverse, ça ne bougera plus lorsque tu bouges la souris.

Concrètement, il faudrait utiliser un timer ici, et que ça soit le timer qui incrémente, pas le on.paint().

Sinon, le timer n'est qu'une horloge, qui envoie une pulsation toutes les x secondes où x est la période. Lorsqu'une pulsation émerge, l'évènement on.timer() est appelé.
Donc, attention, un timer n'est pas du tout un delay =)
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
User avatar
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 98.9%
 
Posts: 6414
Images: 22
Joined: 27 Nov 2008, 00:00
Location: 0x1AACC355
Gender: Male
Calculator(s):
MyCalcs profile
Class: BAC+5: Epita (ING3)

Re: Aide Lua

Unread postby Loulou 54 » 08 Jul 2011, 13:27

Et est-ce qu'il envoie une impulsion au démarrage, quand il est appelé ?
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Re: Aide Lua

Unread postby Levak » 08 Jul 2011, 13:31

Loulou 54 wrote:Et est-ce qu'il envoie une impulsion au démarrage, quand il est appelé ?

De mémoire, oui. Mais si je me trompe, rien ne t'empêche d'appeler manuellement on.timer() juste après le timer.start(x)
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
User avatar
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 98.9%
 
Posts: 6414
Images: 22
Joined: 27 Nov 2008, 00:00
Location: 0x1AACC355
Gender: Male
Calculator(s):
MyCalcs profile
Class: BAC+5: Epita (ING3)

Re: Aide Lua

Unread postby Loulou 54 » 08 Jul 2011, 16:49

Justement c'est ce que je veux éviter. ^^ Je vais voir, pis j'ai peut-être une autre manière de faire. :)
Sinon, comment tu ferais un délai de x secondes ?
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Re: Aide Lua

Unread postby Levak » 08 Jul 2011, 18:10

Loulou 54 wrote:Justement c'est ce que je veux éviter. ^^ Je vais voir, pis j'ai peut-être une autre manière de faire. :)

Une ligne de plus n'est pas la mort pour ce genre de détail

Sinon, comment tu ferais un délai de x secondes ?

Pour faire quoi ?
Concrètement, il faut repenser autrement les concepts en évènementiel. Le Framework sur TI Nspire n'en est qu'un exemple. Tu as le C++ ou le C# pour faire des interfaces graphiques qui fonctionnent sur le même principe. Et dans ces cas là, le delay n'est pas approprié.
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
User avatar
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 98.9%
 
Posts: 6414
Images: 22
Joined: 27 Nov 2008, 00:00
Location: 0x1AACC355
Gender: Male
Calculator(s):
MyCalcs profile
Class: BAC+5: Epita (ING3)

Re: Aide Lua

Unread postby Chockosta » 08 Jul 2011, 18:49

Levak wrote:
Loulou 54 wrote:Justement c'est ce que je veux éviter. ^^ Je vais voir, pis j'ai peut-être une autre manière de faire. :)

Une ligne de plus n'est pas la mort pour ce genre de détail

Euh, je crois qu'il veut éviter que on.timer soit appelé au démarrage. Mais à ma connaissance, ce n'est pas le cas.

Loulou 54 wrote:Sinon, comment tu ferais un délai de x secondes ?

Je plussoie Levak, c'est de l’événementiel. Un delay est inutile... Tu peux toujours mettre une condition dans chaque événement qui est validée par le on.timer...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Aide Lua

Unread postby Loulou 54 » 08 Jul 2011, 19:01

Le but étant de laisser s'écouler un certain temps après un affichage, c'est tout.
EDIT : au passage, quelle est la fonction pour générer un nombre aléatoire ? :)
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Re: Aide Lua

Unread postby Chockosta » 08 Jul 2011, 19:03

math.random(min,max)
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

PreviousNext

Return to Nspire-Lua

Who is online

Users browsing this forum: ClaudeBot [spider] and 4 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.
1880 utilisateurs:
>1823 invités
>50 membres
>7 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)