FLASH CS3 : FINAL CLASS "CLOCK"

top30 Messages postés 1158 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 6 août 2010 - 20 sept. 2007 à 20:07
tlecoz Messages postés 40 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 9 décembre 2007 - 26 sept. 2007 à 00:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/44135-flash-cs3-final-class-clock

tlecoz Messages postés 40 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 9 décembre 2007
26 sept. 2007 à 00:53
UpdateAfterEvent permet de faire des updates à des instants situé "entre deux frame". Sans le updateAfterEvent, que tu utilise onEnterFrame ou setInterval ou timer, l'actualisation de l'image dependra de la cadence de l'animation. Avec updaterAfterEvent, la cadence de l'animation principale n'est pas plus rapide, mais dispose de bcp plus d'image, et est donc plus fluide.
Pour tester, met la cadence de l'anim a 12 image/seconde. Le resultat du updateAfterEvent sera flagrant. :)
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
25 sept. 2007 à 10:47
Salut TOP30
Je viens de tomber sur ta source en faisant un peu de veille, et vu que j'suis pas encore au top (30 lol) de l'AS3 car j'ai pas encore absorbé le language, me viens une question en lisant ta source : Pourquoi refaire Timer ? quel est donc le problème avec la class Timer original ?
Sinon tjs bravo pour tes bonnes sources ca le fait... j'me suis servi de ta class de distortion récement, et ca le fait (http://www.aicf.fr/site.html)

++
_benjy
top30 Messages postés 1158 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 6 août 2010
24 sept. 2007 à 20:37
Apres test, je te confirme...
Selon mon frameWork, "e.updateAfterEvent" n'a pas d'effet !
tlecoz Messages postés 40 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 9 décembre 2007
24 sept. 2007 à 19:47
3/ "e.updateAfterEvent" ne sert à rien !
Dans une première version l'évent "ClockTimer" existait et comportait cette fonction.
Mais aprés divers tests. je me suis vite rendu compte que cela n'apporterai rien de plus puisque le "time" restait identique.

Peut être au niveau du Timer...Je n'ai pas testé a ce niveau là, mais au niveau du rendu des animations , je trouve cela incomparable en terme de fluidité.
zoukozouko Messages postés 148 Date d'inscription dimanche 25 janvier 2004 Statut Membre Dernière intervention 21 janvier 2009
24 sept. 2007 à 16:13
à mon avi, je suis pas encore assez "initié" pour juger la source.
J'arrive même pas à visualiser le swf.
Tout clignote indéfiniement.
Y'a un truc que j'ai zapé?
MErci
top30 Messages postés 1158 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 6 août 2010
24 sept. 2007 à 11:06
1/ Mes functions déclarées "protected" ou "private" qund la classe est finale, c'est juste un problème "d'habitude". Tu as raison ca ne sert à rien !

2/ Certaines de mes classes sont "finales" afin de pas surécriture certaines fonction set éventuellement éviter ainsi un mal fonctionnement. Une classe type "Timer" est plus utile est implémentation que en héritage. C'est mon avis.

3/ "e.updateAfterEvent" ne sert à rien !
Dans une première version l'évent "ClockTimer" existait et comportait cette fonction.
Mais aprés divers tests. je me suis vite rendu compte que cela n'apporterai rien de plus puisque le "time" restait identique.

4/ Les class "Process", "Time", "Scalar" etc sont des classes pouvant paraitre inutiles, mais quand tu essaie de créer des "frameWorks", tu te rend vite compte qu'un grand nombre de petites "utilités" reviennent trés souvent :
- Connaitre le "timer" depuis...
- Limiter une entrée ou une sortie à entre 0 et 1...
- Connaitre l'échelle d'un nombre par rapport à deux autres...
etc, etc...

5/ Depuis la fin de la semaine cette classe a encore changée !!!!
Elle est reste identique mais peut être étendue à travers une classe du package "magicAS3.freepack.events" qui s'appelle : ClockDispatcher !
Une classe "IMPLANTANT" une Clock et en gardant publiques les fonctions de base.

Voila et merci pour vos commentaires bien constructifs !
Cordialement.
tlecoz Messages postés 40 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 9 décembre 2007
22 sept. 2007 à 04:13
Sinon, entierement d'accord avec bali_balo, ce serait bien que l'interet de chaque source soit verifié par un moderateur, ou qu'une rubrique 'code redondant' apparaisse et gere le tout-venant :))
En fait, j'ai l'impression que ca manque de moderateur ici. Il n'y a pas ce probleme sur mediabox, ou en moins pire.
tlecoz Messages postés 40 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 9 décembre 2007
22 sept. 2007 à 04:08
Hello,
Je parlais justement de ce probleme (de timer) sur mediabox tout a l'heure.Ca a l'air de marcher, a vrai dire, je n'arrive pas a y croire :)
Le code semble de prime abord un peu complexe : utiliser clock,time,process...pour avoir le rendu du SWF, dans un premier temps, ce fut surprenant.
Mais visiblement, tout ca fait partie d'un framework, et, une fois la surprise passée, l'architecture semble logique. C'est pas mal du tout ! La classe EventList est une idée simple mais tres bonne, je vais appliquer le principe dans mon framework :)
Juste une petite amelioration tres simple a faire dans ton code :
dans la class Clock, a la fin de la function _updateInstance, tu devrais rajouter :
if(e.updateAfterEvent != null){
e.updateAfterEvent();
}
et remplacer le typage Event par * de e

cela ameliorera grandement la fluidité des animation si on se base sur un Timer et non sur un enterFrame.

9/10
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
22 sept. 2007 à 01:20
Pas beaucoup de connaissance en AS3 même s'il en faut peu je pense pour ta source.
Mais je ne connais pas la classe Timer du package AS3, donc :S. Et j'ai rien comme compilateur pour tester ta classe sous une autre application.

Juste une question : pourquoi déclarer tes attributs et méthodes en "protected" si tu déclares ta classe "final"?
(final???!!!! pourquoi tu ne veux pas qu'on hérite de ta classe, méchant! :P)

ENFIN MES MOTS CLES CHERIES!!! protected, final.
Top30, ya t il le mot clé "abstrac"???

Bon courage à tous ceux qui découvrent l'AS3 :D


bali_balo....
WhiteMagus Messages postés 764 Date d'inscription lundi 21 juin 2004 Statut Membre Dernière intervention 5 février 2010
22 sept. 2007 à 00:24
Lol, en fait je parle en mon nom, mais ça peut s'étendre à pas mal de monde je pense : il y a maintenant 4 catégories : "débutants", "confirmés", "experts" et après la catégorie "Top30". Lol, moi je programme pour le plaisir et comme Bali_Balo, c'est dur de redécouvrir un langage, donc tes sources en AS3 n'ont pas beaucoup de commentaires, lol.

Désolé. Je me mettrai sûrement un jour à AS3, mais pas pour maintenant (début de la fac).

++
top30 Messages postés 1158 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 6 août 2010
21 sept. 2007 à 20:22
Et la source dans tout ca ?
Elle plait ?
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
21 sept. 2007 à 15:56
"La recherche est ton amie ! Promis elle ne te mordra pas..."

Trouvé sur un post du forum titré :"SUPER-DEBUTANT-CHERCHE-COMPRENDRE"

lol...
cs_mouahaha Messages postés 209 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 6 avril 2009 1
21 sept. 2007 à 14:42
Désolé top30, ce n'est pas forcément le lieu approprié pour ca, mais je suis d'accord avec bali_balo...
De retour sur le forum récemment, je suis effrayé de voir le niveau des questions, alors que pour la grande majorité d'entre elles, un peu d'expérimentation et deux minutes de recherche dans l'aide de Flash ou sur FlashKod sont juste ce qu'il faut pour trouver la réponse...
Ca représenterait un sacré boulot, mais peut-être faudrait-il faire un tri dans les sources et mettre en place des sources de références claires et bien codées pour des fonctions de base afin de fournir un support accessible et de qualité.
Et revoir les catégories éventuellement comme le propose bali_balo.

(Ce post est à supprimer aussi évidemment si nécessaire)
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
21 sept. 2007 à 14:04
Quand vais-je me mettre à l'AS3, snifff
J'ai peur de découvrir l'AS3! :P
J'en ai tellement bavé avec l'AS que ça ne me donne pas envie de redécouvrir un langage.
Oui : redécouvrir car il y a eut tellement de changement entre l'AS2 et l'AS3...
C'est reparti pour des milliers de tests et lecture de tuto pour le comprendre :S

Remarque pour les admins :
Peu de personne ose le dire, mais je pense que ce site a été "pollué" par TROP de débutant en Flash. Je sais...tout le monde est passez par là, mais j'ai arrêté de participer au forum (voir même de poster des sources) car les questions se répètent 100000000000000000000 fois et certaines sources ne servent vraiment à rien, à part montrer que je sais faire une interpolation de clip...
Je regrette que toute ces personnes ne font pas l'effort de chercher quelques minutes sur ce site qui a permis à beaucoup de personne de découvrir Flash, et d'être de très bon développeur :D.
Personnellement, aujourd'hui, peut être grâce à ce site j'ai atteint un bon niveau en Flash et je suis devenu chef de projet Flash.
Je suis peut être méchant dans ce message, mais je pense que beaucoup de personne pensent la même chose que moi.
Alors faudrait revoir les catégories des sources Flash : en l'occurence pour l'AS3, Flex, FlashRemoting, etc...

PS : désolé top30 d'avoir posté ce message sur ta source :(
A supprimer si cela gène qui que ce soit.
top30 Messages postés 1158 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 6 août 2010
20 sept. 2007 à 20:07
ATTENTION :
La classe "magicAS3.freePack.core.Map" du package joint ne fonctionne pas !
Rejoignez-nous