Trucsweb.com

Forum de discussion

 Forum « Flash et Shockwave » (archives)

Re: Probleme tout bête de trait progressif

Envoyé: 14 mai 2004, 10h52 par Oznog


Salut,

Effectivement il y a un boggue notable décrié partout à ce niveau.

Même en ayant une ligne (ou contour) sans intérieur et en augmentant la largeur (_width) la hauteur va sensiblement augmenter comme s'il s'aggissait d'un élargissement proportionnel (_scale).

C'est domage. Mais il y a d'autre solution, comme le masque mais aussi comme tu le précise le lineto().

Mais attention faut bien le comprendre. Le lineto() permet une ligne d'un point à un autre (du moteto au lineto). Mais d'un coup, c'est sûr qu'il n'y a rien de progressif la denand. C'est à toi d ele gérer manuellement.

L'idée est de faire une ligne de 1 à 2, puis 2 à trois etc et celà en imbriquand un délais.

Le délais peu aussi être fait manuellement, Tu peux le gérer avec un timer mais Flash à le comportement onEnterFrame qui se produit (selon la cadance du Flash) normalement à 12 cadres seconde. Tu aura donc :

1 à 2, 2 à 3, 3, à 4 etc douze fois par seconde, ce qui prioduit l'effet que tu charche.

Voilà un exemple avec le "lineto". Note qu'il est très simple. Dès que le mouvement est plus complexe c'est à adapter à chaque cas.

L'exemple suivant ne prend en compte qu'e l'axe X, avec l'axe Y il faut ajouter un autre test de condition, et autant de test de condition que de changement de direction. Le tout peut extrêmement se complexifier avec des courbe.

// Création d'un clip vide
this.createEmptyMovieClip("ligne",1);
// Avec ce clip faire...
with (this.ligne) {
// Initialisation des variables
// Position de départ axe X.
var x1 = 0;
// Position de fin de l'axe X
var x2 = 200;
// Position de l'axe Y
var y1 = 100;
// Vitesse du dessin
var v = 1;
// Style et couleur de la ligne
lineStyle(1,0x000000,100);
// Positionner à la position de départ
moveTo(this.x1, this.y1);
// Création de la capture du comportement
onEnterFrame = function() {
// Augmente la position (le 1 à 2 ou x à x+vitesse)
this.x1 += thisy1;
// Dessine selon la nouvelle position, un pixel de plus.
lineTo(this.x1, this.y1);
// Si la position de fin est rencontrer
// détruire la saisie du comportement
// arrêtant ainsi le déplacement
// mais aussi question de vider la mémoire.
if (this.x1>this.x2) delete this.onEnterFrame;
}
}

Ciao
Oznog


Réponses

 sp spRe: Probleme tout bête de trait progressif ashmallum14/5/2004
 sp spRe: Probleme tout bête de trait progressif Oznog15/5/2004
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@