Afficher une image en la peignant

Afficher une image en la peignant - Flash/ActionScript - Programmation

Marsh Posté le 14-11-2005 à 20:44:11    

Salut à tous, voila mon problème :
 
But : afficher une image dont le masque est un code permettant de dessiner. Cay possible ???  :??:  
 
Voila j'ai une image sur un calque (image_initiale)
Sur un calque plus haut une autre (image_finale) et sur un dernier calque encore plus haut un clip (pinceau)
sur ce dernier (pinceau) j'ai ce code sur la première image cléf :
 

Code :
  1. //Création d'un clip dans lequel je veux dessiner
  2. _root.pinceau.createEmptyMovieClip("dessin", 0);
  3. //définition du clip masqué / masquant
  4. _root.image_finale.setMask(_root.pinceau.dessin);
  5. //fonction de dessin (testée ca marche :p )
  6. var isDrawing:Boolean = false;
  7. var mouseListener:Object = new Object();
  8. mouseListener.onMouseDown = function() {
  9.     _root.pinceau.dessin.lineStyle(100, 0x000000, 100);
  10.     _root.pinceau.dessin.moveTo(_xmouse, _ymouse);
  11.     isDrawing = true;
  12. };
  13. mouseListener.onMouseMove = function() {
  14.     if (isDrawing) {
  15.         _root.pinceau.dessin.lineTo(_xmouse, _ymouse);
  16.         updateAfterEvent();
  17.     }
  18. };
  19. mouseListener.onMouseUp = function() {
  20.     isDrawing = false;
  21. };
  22. Mouse.addListener(mouseListener);


 
Voila sans la ligne définissant le masque et le clip à masquer (_root.image_finale.setMask(_root.pinceau.dessin); ), je peux bien dessiner un trait et je voudrais donc me servir de ce trait pour afficher l'image masquée (image_finale). Mais dès que je mets cette ligne, je peux toujours dessiner mais le masque de image_finale (pinceau.dessin) ne découvre pas l'image souhaitée...
 
Je m'embrouille avec tout ca moa  [:spamafote]

Reply

Marsh Posté le 14-11-2005 à 20:44:11   

Reply

Marsh Posté le 15-11-2005 à 10:03:32    

sans garantie, essaye de mettre root.image_finale.setMask(_root.pinceau.dessin); dans le onMouseMove (apres ou avant updateAfterEvent();)


---------------
D3
Reply

Marsh Posté le 17-11-2005 à 12:06:09    

mechkurt a écrit :

sans garantie, essaye de mettre root.image_finale.setMask(_root.pinceau.dessin); dans le onMouseMove (apres ou avant updateAfterEvent();)


ouais j'avais deja essayé mais sans résultats...
Le problème est qu'un dessin créé en actionScript n'est pas pixélisé et ne peut donc pas servir de masque... (a première vue)
Donc j'avais aussi pensé a effacer l'image au passage de la sourie, est-ce possible ?
Ou mettre les pixels de cette image en alpha 0 ou une autre astuce mais la chui un peu perdu... enfin bon si vous avez des idées chui preneur :)
 
 :hello:

Reply

Marsh Posté le 20-11-2005 à 03:44:21    

Effectivement, une image "tracée" ne peut pas servir de masque.
Tu dois créer dans ta bibliothèque un petit mc ( un bête cercle ) que tu attachera dans pinceau à chaque mouseMove.
Un bon exemple ici:
http://www.sephiroth.it/file_detail.php?id=94

Reply

Marsh Posté le 21-11-2005 à 14:04:37    

merci beaucoup, je m'atèle à la compréhesion du code :/
 
:hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed