Communauté Digitale Francophone - InfographiK

Communauté Digitale Francophone - InfographiK (http://www.infographik.fr/forum.html)
-   Flash Débutant (http://www.infographik.fr/tutoriaux/flash-et-actionscript/flash-debutant/)
-   -   Effet de distorsion (http://www.infographik.fr/tutoriaux/flash-et-actionscript/flash-debutant/4237-effet-de-distorsion.html)

CooLSlayeR 14/12/2003 13h39

Effet de distorsion
 
ActionScript Code:
  1. MovieClip.prototype.bump = function(x,y,radius,force){
  2.    for(z in this){
  3.       var distx = this[z]._x - x;
  4.       var disty = this[z]._y - y;
  5.       var distance=Math.sqrt(distx*distx + disty*disty);
  6.       if(distance==0) distance=1;
  7.       var cos = distx/distance;
  8.       var sin = disty/distance;
  9.       if(distance<radius)
  10.       {
  11.          this&#91;z]._x += force*cos*(radius-distance);
  12.          this&#91;z]._y += force*sin*(radius-distance);
  13.       }
  14.    }
  15. }

Par exemple: pour un clip nommé 'test' avec plein de carrés alignés dedans (pour bien voir l'effet) je mets:

ActionScript Code:
  1. _root.test.bump(0,0,200,0.3);

Une petite précision: les coordonnées x et y du centre de la lentille sont exprimées dans le clip, pas dans le root, de ce fait la position de 'test' importe peu, la distortion est toujours la même.

Tuto par Damien

stoopx 14/12/2003 17h30

merci mais ce serait cool si tu mettait un lien vers un exemple pour que ce soit plus clair.

Bibi70 29/01/2008 17h57

Bonjour,

Merci pour ce code. Mais comme le dit Stoopx, sans un exemple on a vraiment du mal à se rendre compte.
Tu sais, quand on a le nez dans un code, on a le nez dedans, alors on s'y repère.
Mais pour celui ou celle qui débarque c'est juste du pur chinois. Il manque beaucoup d'éléments pour permettre à ceux qui débarquent de rentrer un peu dedans. Perso, je pige que dalle, ni à quoi ça sert, ni ce que ça rend, ni comment ça fonctionne. Je suis pas développeur, je maitrise juste les petites bases d'AS, j'ai besoin d'apprendre beaucoup en AS. Mais je suis pas complètement néophyte, et je pige absolument rien du tout. Alors, comme infographik est, me semble-t-il, une communauté plus orientée graphisme que codage, ça serait drôlement chouette de prendre le temps de faire des choses plus riches en explications, avec exemple du rendu.
Perso, pour l'instant j'ai pas encore été foutue de mettre un tuto en ligne ici, alors je trouve ça déjà vraiment génial de prendre le temps d'en mettre, et de trouver comment on fait pour le mettre à dispo de tout le monde...
Donc un grand merci pour ton code quoi qu'il en soit, mais bon, voilà, si on avait des explications avec, ça nous aiderait bien à pouvoir en profiter je pense !

Bibi70


Fuseau horaire GMT +2. Il est actuellement 17h21.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Version française #20 par l'association vBulletin francophone
Communauté Graphique
CNIL : 1130886