Forum de discussion
Forum « Flash et Shockwave » (archives)
Re: Mais la Matrice, c koi ????
Envoyé: 14 février 2004, 18h18 par blues
j'ai corriger les faute de l'exemple...
et j'ai ajouter des variable pour la direction du dégradé
je n'ai pas trouver comment le faire en rond..
mais ce que j'ai compris c'est qu'il y a 2 maniere de fair un dégradé...
l'un avec une Matrice
l'autre avec un type de matrice
le 1° cas est incompréhensible pour l'instant ...je cherche, car comme tu le dit, aucune explication n'est donné quant a savoir sur quoi influance les variable a,b,c,d,e,f,g,h,i .. no comprendo
le type de matrice est plus simple
et pour un rectangle avec dégradé cela peut donné un prototype de movieclip du genre
MovieClip.prototype.Gradien = function(X, Y, Color1, Color2) {
//
Horizontal = 0.5*Math.PI;
//haut -> bas
Horizontal2 = -0.5*Math.PI;
//bas -> haut
Vertical = 2*Math.PI;
// gauche -> droite
Vertical2 = 1*Math.PI;
// droite -> gauche
Biais = 0.25*Math.PI;
//depart -> haut gauche
Biais2 = -0.25*Math.PI;
//depart -> bas gauche
Biais3 = 1.25*Math.PI;
//depart -> bas droit
Biais4 = -1.25*Math.PI;
//depart -> haut droit
this.colors = [Color1, Color2];
//Color1 = Couleur de départ / Color2 = Couleur d'arivée
this.alphas = [100, 100];
this.ratios = [0, 0xFF];
this.matrix = {matrixType:"box", x:0, y:0, w:X, h:Y, r:Horizontal};
this.beginGradientFill("linear", this.colors, this.alphas, this.ratios, this.matrix);
//this.lineStyle(1, Color1, 100);
this.moveTo(0, 0);
this.lineTo(0, Y);
this.lineTo(X, Y);
this.lineTo(X, 0);
this.lineTo(0, 0);
};
qui s'utilise comme tel
_root.createEmptyMovieClip("Mc_grad", 0);
_root.Mc_grad.Gradien(XScene, YScene, 0x660000, 0x000000);
attention a l'aide en francais, elle est pleine de fautes donc parfois si cela ne marche pas c'est pas une mauvaise utilisation, c'est un problème de syntax, car ne l'oublion pas flash 2004 a un typage fort et est casesensitive
donc faut être très scrupuleux....
bon ben courage ets si il y a d'autre info je suis preneur...
Réponses
|