Aide - Recherche - Membres - Calendrier
Version complète : Supprimer une forme d'une autre forme avec la classe graphics ?
Centre de Formation Flash - Forums Adobe Flash > Adobe Flash > Programmation Actionscript > Actionscript 3
Stitch952
Bonjour à tous,

Quelqu'un connait il une astuce pour supprimer une forme d'une autre forme avec la classe graphics ?

Je ne sais pas si je suis très clair mais par exemple imaginez un simple carré dans lequel il y a un trou en plein milieu... Dans flash je dessine mon carré puis je dessine un rond par dessus, sur le même calque puis en le supprimant, je fais un trou dans mon carré. C'est possible de faire cela en AS3 ?

Évidement, je ne cherche pas une astuce comme par exemple utiliser un masque ou autre, juste savoir si c'est possible icon_wink.gif.

Merci par avance,

bien à vous,

Stitch
razael
Salut,

Oui, c' est possible :

Action Script

var monCarre:Sprite = new Sprite();
monCarre.graphics.beginFill(0);
monCarre.graphics.drawRect(0,0,200,200);
monCarre.graphics.drawCircle(100,100,75);
monCarre.graphics.endFill();
addChild(monCarre);
Logic
Razael, oui c'est possible de dessiner un rond dans un carré par code via graphics.

Stitch, non ça me semble pas possible de faire un trou, vu que tu ne peux pas "selectionner" le rond pour le supprimer du tracé. Ce genre de manip n'est possible que dans l'éditeur graphique de Flash, qui lui va travailler sur une surcouche graphique plus abstraite, avec ses propres données et ses propres outils, lesquelles données seront transformés et converties à la volée en code actionscript au moment de la compilation.

note: je parle pour Flash 9. Possible que certaines nouveautés de Flash 10 le permettent.
jeanphilippe
salut
le setMask ne remplirait pas cette fonction ?
dada
Salut,

Testez le code de razael... wink.gif
Si on n'utilise pas endFill() entre deux formes çà fait une soustraction. smile.gif
razael
eh ben oui ...
Logic
Euh... icon_eek.gif

Je icon_arrow.gif
wips
pas maaaaaaaal gourou.gif
Logic
Comme quoi on en apprend tous les jours gourou.gif
G.
excellent gourou.gif
Stitch952
Effectivement, je viens d'essayer, ça marche a merveille icon_biggrin.gif ...
Même si la première forme est faite à base de "lineTo", un moveTo fait passer en "mode soustraction".

Je ne connaissais pas, excellent.
Félicitations et merci à tous pour votre participation icon_wink.gif.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2009 Invision Power Services, Inc.