Forums Développement Multimédia

Aller au contenu

rotation d'un clip vers souris avec effet fluide: saut de rotation?

CODE

3 réponses à ce sujet

#1 dozhwal

    Ceinture Blanche

  • Members
  • Pip
  • 12 messages

Posté 13 May 2012 - 09:56 AM

Bonjour,
j'ai chercher sur le net mais pas trouvé...

j'ai une fonction "rotationer clip vers souris en douceur"


realrot3 = Math.atan2(ym-y, xm-x);   //direction vraie
 
   realrot=realrot+(realrot3-realrot)*0.05  //direction avec fluidité
   bras.rotation=(realrot)*180/3.1415  //on bouge clip avec cette fluidité
 

flash s'amusant a gérer la rotation de -3.14 a 3.14 et non de 0 a 2PI, le souci est quand on passe
la ligne de y : le clip fait un tour sur lui-même.
jusque la, j'avais régler avec ça a coup de if(realrot3>3.14) then {realrot3=-3.14} mais j'aimerais
un code propre et je penses qu'il y a une solution plus simple.
merci !

#2 dldler

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 4163 messages

Posté 13 May 2012 - 12:19 PM

Une solution très simple :
avoir ta propre propriété rotation. Tu fais ton effet d'inertie sur cette propriété.

Quand tu appliques la rotation au clip, Flash se charge tout seul de retranscrire les dépassements.

#3 Nelchaël

  • Members
  • PipPipPipPipPipPipPipPip
  • 1900 messages

Posté 13 May 2012 - 23:48 PM

Citation

flash s'amusant a gérer la rotation de -3.14 a 3.14 et non de 0 a 2PI
Quelque soit l'intervalle qu'aurait géré Flash, il y aurait toujours eu ce "problème du saut". ;)

Citation

un code propre et je penses qu'il y a une solution plus simple.
Propre, c'est possible, mais simple, dans le style d'une ligne de code sans "if" ni "?", j'en doute.

dldler, je ne vois pas bien quelle serait la simplification que tu proposes : ça permettrait d'éviter certains tests ? Il me semble qu'on aurait toujours le saut à gérer.

Parce que, sinon, j'avais codé il y a quelques années une fonction AS1 à priori intéressante et qui gère le saut. Pour l'AS3, il n'y aurait qu'à rajouter le typage.
nelchael.fr freelance flash CS6

#4 Broutous

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 101 messages

Posté 21 May 2012 - 23:06 PM

Salut,
J'attire (peut-être à tord?) votre attention sur TweenMax :

TweenMax.to(bras, 0.1, {shortRotation:{rotation:realrot*180/3.1415}});
 
Sans doute pas génial niveau opti, encore que j'y connais pas grand chose, ça a au moins le mérite de gérer le saut :)
"Regardez-moi ça ! J'ai de la corne sur les doigts on dirait des pieds..."



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)