Rotation texte dynamique

Résolu
jonatange Messages postés 6 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 19 février 2009 - 16 nov. 2006 à 20:27
gfpl Messages postés 172 Date d'inscription samedi 11 août 2012 Statut Membre Dernière intervention 9 avril 2011 - 28 juil. 2008 à 20:07
Bonjour aux Flashkoders  !

Débutant en ActionScript, j'ai un petit problème à vous soumettre  !


Soit un clip composé de deux cercles reliés par une barre (genre haltères :
 =) Lorsque j'appuie sur un bouton : on (release) {mon_clip._rotation = mon_clip._rotation + 30 ;}, le clip effectue une rotation sur lui-même de 30° (l'axe se situant au milieu de la barre)
Je place un texte dynamique (inclus dans le clip) au milieu de l'un des deux cercles ; le résultat recherché est qu'à chaque rotation de 30° un texte différent apparait dans la fenêtre dynamique via sa variable (vous me suivez ?)
Or, lorsque je clic sur le bouton, le clip effectuant sa rotation, la fenêtre dynamique disparraît ! En revanche, si dans mon code je modifie seulement un paramètre orthogonal (par ex : mon_clip._x = mon_clip._x + 5), l'ensemble se déplace harmonieusement sans disparition de la fenêtre  !
Quelqu'un peut-il m'expliquer 1) la disparition mystérieuse de ma fenêtre dynamique dans un cas et non dans l'autre 2) comment y remédier ?
Merci par avance !
Jonathan

5 réponses

cs_Girou Messages postés 1203 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 23 juillet 2009 2
16 nov. 2006 à 22:52
Bonjour,

Si ton texte est créé dans l'environnement de flash (pas via actionscript) il faut  inclure les contours de police dans le panneau propriétés. (Intégrer... dans Flash 8)

Si c'est un texte créer via actionscript, c'est plus compliqué... si c'est ton cas, tiens moi au courrant




@+
3
cs_Girou Messages postés 1203 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 23 juillet 2009 2
18 nov. 2006 à 22:55
Bonjour jonatange,

question simple mais réponse pas évidente du tout
Il suffirait de maintenir les texte à l'horizontale donc de leur donner une _rotation egale à -_rotation du clip qui tourne...
MAIS VOILA, tu risques fort de te trouver devant un gros soucis de centrage... en effet les texte vont pivoter selon un point d'allignement qui se situe en haut à gauche du champ de texte qui ne coincidera pas avec le centre des boules des haltères.

La solution est de placer ton champs de texte DANS un movieClip et de placer le centre de ton texte sur le point 0,0 du clip (son point d'allignement).
Ensuite a chaque rotation du clip complet, tu donne a ton clip contenant le texte une rotation égale à -_rotation du clip complet

J'espère que je me suis fait comprendre...
[auteurdetail.aspx?ID=292624 ]
@+
3
jonatange Messages postés 6 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 19 février 2009
17 nov. 2006 à 16:38
Bonjour Girou,

Merci pour ta réponse.

Effectivement, mon texte dynamique créé sous environnement Flash admet une rotation une fois les polices intégrées.

Mais à présent, je suis confronté à un nouveau problème : le texte apparaît tête en bas sitôt les 180° franchis. Ma question sera alors très simple : comment le conserver horizontalement pour chaque rotation effectuée ?

Merci encore pour ton aide !
0
jonatange Messages postés 6 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 19 février 2009
6 déc. 2006 à 18:09
Bonsoir Girou

Tout d'abord désolé pour cette réponse tardive...

En ce qui concerne mon problème, suivant tes conseils, j'ai fini par trouver la solution la plus simple. Je la consigne ici, à toute fin utile, pour les débutants comme moi, ou pour les plus pro qui auraient quelques lacunes (et quelques difficultés à l'avouer )...

Soit mon clip "Haltères" = dans lequel j'inclus le clip "Fenêtre" (une fenêtre dynamique que j'ai tout simplement transformé en symbole clip ! - bien pratique, en passant, pour en faire un texte clignotant par exemple !-)

Je veux faire pivoter mes Haltères de 30° à chaque pression sur un bouton, et conserver la fenêtre horizontale.
Le code est alors très simple :

on (release) {
   _root.Haltères._rotation = _root.Haltères._rotation + 30 ;
   _root.Haltères.Fenêtre._rotation = - _root.Haltères._rotation
}





Merci encore à toi Girou d'avoir eu l'amabilité et l'humilité d'avoir aidé un débutant.

Jonathan
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gfpl Messages postés 172 Date d'inscription samedi 11 août 2012 Statut Membre Dernière intervention 9 avril 2011
28 juil. 2008 à 20:07
voilà j'ai essayer ta procédure mais ça ne marche pas ;(
0
Rejoignez-nous