Angle, distance et placement de clip

Soyez le premier à donner votre avis sur cette source.

Vue 4 309 fois - Téléchargée 555 fois

Description

Que cela vous serve !

Proto de distance entre deux clips, d'angle...

Et surtout :
Placement de clip selon un angle et une distance
De son point d'orgine ou pas ou enfin à partir d un autre point !

PS : Un grand merci à AFAD, pour sa précieuse aide ; )

Source / Exemple :



// Copyright2003 - Top30 pour hope_multimedias // ----- Libre d'usage sans but commercial ---- // *************************************************************** MovieClip.prototype.placeTo = function (angle, distance, himSelf) { // ------------------------------------------------------------------------- // Se place à partir d'un point 0 si "himSelf" egale true, sinon à partir de son origine this._x = (distance * Math.cos (angle * Math.PI / 180)) + (himSelf ? this._x : 0); this._y = (distance * Math.sin (angle * Math.PI / 180)) + (himSelf ? this._y : 0); }; // *************************************************************** MovieClip.prototype.placeFrom = function (angle, distance, obj) { // ------------------------------------------------------------------------- // Se place à partir d'un object contenant un _x et un _y // Object et non clip car les clips sont des onject et ceci permet de passer comme // obj un point creer avec setPoint par exemple // Voir exemple plus bas... this._x = (distance * Math.cos (angle * Math.PI / 180)) + obj._x; this._y = (distance * Math.sin (angle * Math.PI / 180)) + obj._y; }; // *************************************************************** MovieClip.prototype.setPoint = function (ptName, X, Y) { // ---------------------------------------------------------------------------------- (this[ptName] == undefined) ? this[ptName] = new Object () : null; this[ptName]._x = (X == undefined) ? this._x : X; this[ptName]._y = (Y == undefined) ? this._y : Y; }; // *************************************************************** MovieClip.prototype.distanceOf = function (obj2) { // ---------------------------------------------------------------------------------- var delta_x = this._x - obj2._x; var delta_y = this._y - obj2._y; return Math.sqrt ((delta_x * delta_x) + (delta_y * delta_y)); }; // *************************************************************** MovieClip.prototype.angleWith = function (obj2) { // ------------------------------------------------------------------------- var delta_x = this._x - obj2._x; var delta_y = this._y - obj2._y; var radians = Math.atan2 (delta_y, delta_x); (delta_y < 0) ? radians += (2 * Math.PI) : null; return radians / (Math.PI / 180); }; // *************************************************************** clipA.placeTo (210, 180, true); // this.setPoint ("ptTest", -150, -150); clipB.placeFrom (45, 400, ptTest); // this.onEnterFrame = function () { var dis = _root.clipA.distanceOf (_root.clipB); // Permet de récupérer les coordonnées de la souris // et de les manipuler comme un clip puisque il contient // un _x et et _y this.setPoint ("_mouse", _root._xmouse, _root._ymouse); this.text_txt.text = Math.round (dis) + " px séparent les deux clips"; };

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
37
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
14 mars 2004

nooon c mon cauchemard ki recommence la trigo me suit partout les maths me harcèlent j'en peut plus aaaaahhhh
Messages postés
352
Date d'inscription
vendredi 4 octobre 2002
Statut
Membre
Dernière intervention
18 juin 2004

La seconde c'est assez lointain, pas si loin mais y'a 5 ou 6 ans quand mm, et de ce que je me souviens, c'est de bonnes grosses siestes ;)
Messages postés
715
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
10 septembre 2009

C'est vrai toptop je savais pas que les fonctions trigonométriques de flash fonctionnaient de cette manière mais en terme général avec ta calculatrice par exemple, tu calculera toujours tes cos, sin tan en degrés.

D'ailleurs je veus pas me la peter (si c'est fait) mais je suis titulaire d'une licence de maths donc ce genre de conneries j'en connais un rayon. Je vous rassure j'ai changé de section depuis.. Les maths jusqu'a un certain point c'est utile ok, mais des fois ya moyen de bien halluciner. lol

Heureux d'avoir peu te filer un coup de main Top30.

Au fait tu faisais quoi Zappan en seconde Hein! on peut savoir!! Déja en train de draguer les minettes et de taper des flippers!! lol
Messages postés
311
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
27 septembre 2014

super les gars c'est du lourd ça !
une source bien utile --> 10
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

AFAD.. Je te remercie mille fois... Mais attention !
TROP FACILE TROP FACILE ET DEMIE ! Car tu t es trompé :
Ici : _x 157*cos(38) et _y157*sin(38), les 38 sont en degrés ! il faut les convertir en radian ! Car ce sont des radians qu'attendent Sinus et Cosinus... ! Tranquil, j'ai pas cherché plus de 2 minutes car tu m as beaucoup aidé ! Encore merci...
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.