begin process at 2010 03 20 18:32:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

taille d'un clip déterminé en fonction de la distance souris - clip


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

taille d'un clip déterminé en fonction de la distance souris - clip

jeudi 26 octobre 2006 à 16:23:27 | taille d'un clip déterminé en fonction de la distance souris - clip

Angoria

Bonjour à tous.

J'essaie de tapper un code simple et clair pour que lorsqu'on approche la souris d'un clip ce clip grossisse en taille. J'ai réussi à faire...l'inverse. J'arrive à faire diminuer de taille un clip lorsque la souris s'approche, seulement j'ai essayé toutes les formules mathématiques possibles et inimaginables, je n'ai pas trouvé comment faire l'effet inverse. Voici le script sur mon clip :

onClipEvent (mouseMove) {
 xnormal = _x;
 ynormal = _y;
 xmouse = _root._xmouse;
 ymouse = _root._ymouse;
 xdist = xmouse-xnormal;
 ydist = ymouse-ynormal;
 if (xdist<=200) {
  _xscale = xdist;                    // c'est là que je cherche la bonne formule mathématique !
  _yscale = ydist;                    // idem
 } else {
  _xscale = 100;
  _yscale = 100;
 }
}

(oui, en effet je veux une portée qui ne dépasse pas 200).
Je précise aussi qu'il n'y aura pas qu'un seul clip sur la scène, mais un bon nombre, et s'il faut faire des modifications ça serait bête de copier-coller l'AC sur chaque clip...J'ai donc tenté de collé le script dans un sous-clip, seulement tous mes clips réagissent de la même manière par rapport aux distances.

Merci de votre aide...
jeudi 26 octobre 2006 à 16:56:30 | Re : taille d'un clip déterminé en fonction de la distance souris - clip

atchoumdu51

Membre Club
Bonjour,
je te propose une petite solution qui te permet de choisir ton maximum de grossissemment par le biais de rapport max (taille max/taille au départ). Et en 200 ton clip aura pour taille la taille originale

var rapportMax = 2;
_xscale = rapportMax*100-xdist*(100-rapportMax)/200;
_yscale =
rapportMax*100-ydist *(100-rapportMax)/200 ;

Pour indication la recherche se fait en se disant: en 0 je veux que mon clip fasse cette taille et en 200 cette taille, ce qui te donne deux points et donc une droite d'équation ax+b qui passe par ces deux points (par les polynomes d'interpolation de Lagrange pour l'anecdote), tu résout
a*0 + b = max; d'ou b = max
a*200 + b = 100 d'ou a = (100-b)/200 = (100-max)/200
jeudi 26 octobre 2006 à 21:19:28 | Re : taille d'un clip déterminé en fonction de la distance souris - clip

Angoria

Ok, merci beaucoup pour cette formule !! 

J'ai amélioré le code et rajouté des fonctions qui permettent lorsque la valeur de la taille du carré devient négative l'effet soit inversé, ça donne ça :

onClipEvent (mouseMove) {
 xpos = _x;
 ypos = _y;
 xmouse = _root._xmouse;
 ymouse = _root._ymouse;
 xdist = xmouse-xpos;
 ydist = ymouse-ypos;
 if (xdist<100 and xdist>-100 and ydist<100 and ydist>-100 ) {
  var max = 2;
_xscale = max*100-xdist*(100-max)/100;
_yscale = max*100-ydist*(100-max)/100 ;
 } else {
  _xscale = 100;
  _yscale = 100;
}
 if (xdist<=-0) {
       var max = 2;
_xscale = max*100-xdist*(1-max);
}
if (ydist<=-0) {
       var max = 2;
_yscale = max*100-ydist*(1-max);
}
if(xdist<-100){
    _xscale = 100;
}
if(ydist<-100 or ydist>100){
    _yscale = 100;
}
}

Par contre, j'ai un peu de mal à épurer tout ça...(si c'est épurable !)
Et il y a aussi un autre problème ; lorsque l'on bouge la souris sur l'axe X par exemple, le carré va donc varier sa taille selon _xmouse mais l'effet ne s'atténue pas lorsque _ymouse varie ; en faisant le test avec plusieurs carrés disposés sur la scène, la ligne entière d'un même X grossit (il y a évidament le même problème pour Y).
jeudi 26 octobre 2006 à 21:23:02 | Re : taille d'un clip déterminé en fonction de la distance souris - clip

Angoria

Oups, j'ai collé un AC d'une version précédente. J'ai oublié de rajouter ma correction sur les lignes :

_xscale = max*100-xdist*(100-max)/100;
_yscale = max*100-ydist*(100-max)/100 ;

remplacé par:

_xscale = (max*100-xdist*(100-max)/100)-ydist;
_yscale = (max*100-ydist*(100-max)-xdist/100)-xdist ;



Cette discussion est classée dans : taille, clip, souris, xmouse, ymouse


Répondre à ce message

Sujets en rapport avec ce message

dessiner un cadre avec la souris [ par zaara ] Bonjour @touspour dessiner un rectangle avec la souris, il faut fixer la pos intial et final de la souris, bon ca marche avec la première mais la deux vend zoom a effet inatendu... quelqu'un est interresé? [ par fanfouer ] bonjour, j'ai posté hier un topic sur equel je demandait comment batir un zoom en dessinant un cadre sur l'endroit a zoomer. J'ai suivi le tutorial su taille image [ par blat ] bonjour j'ai un pb de dimension pour un clip qui contient seulement une imageje charge l'image par un loadMovie puis je force la taille grace aux attr Propriétés d'un clip [ par mdog ] Bonjour a tous,Je me remet au Flash apres quelques temps sans toucher a l'action script et j'ai un petit probleme.Dans mon anim je charge une image av j'ai besoin d'aide... un truc tout bête en plus je suis sûr... [ par oros ] Alors ce message doit peut-être être posté ailleurs hein... mais comme je savais pas trop je l'ai mis là...donc voilà mon problèmej'essaie de faire un Lecture inverse d'un clip en fonction de la position de la souris... [ par fa0007 ] Bonjour, j'ai fait un clip contenant une voiture en 3d qui tourne sur elle même...J'aimerais la faire tournée en fonction de la position de la souris. anim de movie clip selon deplacement de souris [ par layen ] bonjour a nouveau ; j'essaye desesperement de trouver quelqu'un qui saura me repondre pour terminer mon code (qui n'est peut etre pas sur la bonne rou suivre objet au pointeur souris quand le pointeur passe sur un clip [ par seb22360 ] <TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 body clip s'adapotant a la taille exacte d'un texte [ par lilyvirus ] Bonjour J'ai un petit souci : Sur les pages d'un site j'affiche mon titre de facon dynamique grace a un fichier xml en externe En fond de ce texte j Comment désactiver la réaction d'un clip au passage de la souris dans un menu ? [ par logan_Kyles ] BonjourJ'ai un problème assez simpliste sur un menu simpliste lui aussi. Pour tout dire c'est surtout un problème de mémoire on va dire J'ai crée un m


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales