begin process at 2012 05 27 17:25:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Problème : Point d'origine différent


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème : Point d'origine différent

dimanche 20 janvier 2008 à 12:56:45 | Problème : Point d'origine différent

makizar

Bonjour,

Etant débutant en ActionScript 3, je suis face à un problème que je n'arrive pas à résoudre.

Je souhaite déplacer un clip en fonction du déplacement de la souris par l'intermédiaire d'un Drag'n'Drop. Jusque là, rien de bien compliqué mais le problème est que le clip que j'ai crée n'a pas le même point d'origine (0, 0) que ma fenêtre. Je ne comprends pas :o

Ce qui fait que lorsque je déplace mon clip en bougeant la souris, il est décalé en X et en Y.

Voici donc le code :

[code]
  1. // variables 
  2. var black:uint = 0x000000
  3. var brownbg:uint = 0xded3b9
  4. var brown1:uint = 0xf1ebdd
  5. var brown2:uint = 0x804000
  6. var brown3:uint = 0xf8f4e8
  7. var white:uint = 0xffffff
  8. var urlCarte:String = "petite_carte.png"
  9. var stopMove:Boolean; 
  10.  
  11.  
  12. // dimensions de la scene 
  13. var largeurS:uint = stage.stageWidth; 
  14. var hauteurS:uint = stage.stageHeight; 
  15.  
  16.  
  17. // conteneur 
  18. var conteneur:Sprite = new Sprite(); 
  19. conteneur.graphics.lineStyle(2, brown2); 
  20. conteneur.graphics.beginFill(brown1); 
  21. conteneur.graphics.drawRect(1010, largeurS-20, hauteurS-20); 
  22. conteneur.graphics.endFill(); 
  23. conteneur.filters = [new DropShadowFilter(3)]; 
  24.  
  25.  
  26. // espace pour parcourir la carte 
  27. var parcoursCarte:Sprite = new Sprite(); 
  28. parcoursCarte.graphics.lineStyle(1, black); 
  29. parcoursCarte.graphics.beginFill(brown3); 
  30. parcoursCarte.graphics.drawRect(2020340, conteneur.height-120); 
  31. parcoursCarte.graphics.endFill(); 
  32. conteneur.addChild(parcoursCarte); 
  33.  
  34.  
  35. // chargement de la carte 
  36. var loader:Loader = new Loader(); 
  37. loader.load(new URLRequest(urlCarte)); 
  38. loader.cacheAsBitmap = true
  39. loader.x = 22
  40. loader.y = 22
  41. conteneur.addChild(loader); 
  42.  
  43.  
  44. // masque pour le parcours de la carte 
  45. var masqueCarte:Sprite = new Sprite(); 
  46. masqueCarte.graphics.beginFill(black); 
  47. masqueCarte.graphics.drawRect(2222337, conteneur.height-123); 
  48. masqueCarte.graphics.endFill(); 
  49. conteneur.addChild(masqueCarte); 
  50.      
  51.  
  52. // espace pour la saisie des coordonnees  
  53. var saisieCoord:Sprite = new Sprite(); 
  54. //saisieCoord.graphics.lineStyle(1, black); 
  55. saisieCoord.graphics.beginFill(brown3); 
  56. saisieCoord.graphics.drawRect(20, conteneur.height-9034085); 
  57. saisieCoord.graphics.endFill(); 
  58. conteneur.addChild(saisieCoord); 
  59.  
  60.  
  61. // espace pour la vue globale de la carte 
  62. var vueGlobale:Sprite = new Sprite(); 
  63. vueGlobale.graphics.lineStyle(1, black); 
  64. vueGlobale.graphics.beginFill(brown3); 
  65. vueGlobale.graphics.drawRect(conteneur.width-29520140140); 
  66. vueGlobale.graphics.endFill(); 
  67. conteneur.addChild(vueGlobale); 
  68.  
  69.  
  70. // espace pour la vue zoomee d?une partie de la carte 
  71. var vueZoom:Sprite = new Sprite(); 
  72. vueZoom.graphics.lineStyle(1, black); 
  73. vueZoom.graphics.beginFill(brown3); 
  74. vueZoom.graphics.drawRect(conteneur.width-14520140140); 
  75. vueZoom.graphics.endFill(); 
  76. conteneur.addChild(vueZoom); 
  77.  
  78.  
  79. // espace pour la vue detaillee 
  80. var vueDet:Sprite = new Sprite(); 
  81. vueDet.graphics.lineStyle(1, black); 
  82. vueDet.graphics.beginFill(brown3); 
  83. vueDet.graphics.drawRect(370170, conteneur.width-375, conteneur.width-375); 
  84. vueDet.graphics.endFill(); 
  85. conteneur.addChild(vueDet); 
  86.  
  87.  
  88. // cadre de selection 
  89. var select:Sprite = new Sprite(); 
  90. select.graphics.lineStyle(1, black); 
  91. select.graphics.beginFill(white, 0.4); 
  92. select.graphics.drawRect(22+(masqueCarte.width/2)-2522+(masqueCarte.height/2)-255050); 
  93. select.graphics.endFill(); 
  94. conteneur.addChild(select); 
  95.  
  96.  
  97. // application du masque sur la carte 
  98. loader.mask = masqueCarte; 
  99.  
  100.  
  101. // ajout du conteneur 
  102. addChild(conteneur); 
  103.  
  104.  
  105. // ajout du listener de click de souris 
  106. select.addEventListener(MouseEvent.CLICK, startMove); 
  107.  
  108.  
  109. // demarrage et arret du dragndrop sur le cadre de selection par un clic de souris 
  110. function startMove(event:MouseEvent):void { 
  111.     if (stopMove){ 
  112.         select.stopDrag(); 
  113.         stage.removeEventListener(MouseEvent.MOUSE_MOVE, inMove); 
  114.         stopMove=false
  115.     } 
  116.     else { 
  117.         select.startDrag(); 
  118.         stage.addEventListener(MouseEvent.MOUSE_MOVE, inMove); 
  119.         stopMove=true
  120.     } 
  121.  
  122.  
  123. // redefinition des coordonnees de la selection 
  124. function inMove(event:MouseEvent):void { 
  125.     select.x = setX(mouseX); 
  126.     select.y = setY(mouseY); 
  127.     trace("x = "+mouseX+", y="+mouseY); 
  128.     trace("select.x : "+select.x+", select.y : "+select.y); 
  129.     event.updateAfterEvent(); 
  130.  
  131.  
  132. // redefinition de la valeur en x de la selection 
  133. function setX(valX:Number):Number { 
  134.     if (valX <= 22) { 
  135.         return 22
  136.     } 
  137.     if (valX >= 359) { 
  138.         return 359
  139.     } 
  140.     return valX; 
  141.  
  142.  
  143. // redefinition de la valeur en y de la selection 
  144. function setY(valY:Number):Number { 
  145.     if (valY <= 22) { 
  146.         return 22
  147.     } 
  148.     if (valY >= (conteneur.height-145)) { 
  149.         return (conteneur.height-145); 
  150.     } 
  151.     return valY; 
  152. }
[/code]
Merci de bien vouloir m'aider.





Cette discussion est classée dans : var, select, sprite, conteneur, graphics


Répondre à ce message

Sujets en rapport avec ce message

Scrollpane et chargement d'images dynamique [ par SoyYo ] Bonjour J'ai un probleme avec une galerie photo dynamique. Je voudrais charger des photos a partir d'un XML dans un scrollpane. En fait ce que je fa swf externe omniprésent.... [ par nicodogs ] bonjour à tous,J'ai un soucis avec un swf externe... dans mon anim principale, je charge un swf externe. tout se passe bien (préload % + anim) mais le problème LoadMovie / MovieClipLoader [ par zecaraz ] Bonjour à tous!Je vais essayer de vous exposer mon problème le plus clairement possible.J'ai fait une animation avec un fond comportant plusieurs imag Image enligne, hord ligne [ par noarno ] Salut voila je ne comprends pas mes images se chargenet bien en local mais plus en ligne voila le code que j'utilise... MovieClip.prototype.charge_im galerie flash AS3 [ par biguiz ] bonjour tout le monde !J'ai un petit problème de débutant.J'ai fait une galerie images à partir d'un tutorial anglais, et tout marche très bien.Quand Problème dans un script de galerie !! [ par lilliputien ] Bonjour,Je suis sur un petit projet de galerie qui se génère automatiquement à l'aide d'un XML.Le XML est de cette forme :     <image chemin="imag ActionScript 3 soucis d'unLoad... [ par Riliono Herve ] Bonjour, J'ai un souci en AS3 (voir plusieurs.. mais une chose à la fois !) <?xml:na Preload Loadmovie trop pressé [ par godak ] J'avais trouvé ce code ici, il y a un moment, depuis je l'utilise régulièrement.mais il y a un soucis.Je viens de faire un site avec des photos assez Problème avec mon menu [ par Lakitorai ] Ca va bientôt faire une semaine que je suis sur la programmation d'un menu en AS3 ; et ont peut dire que je rencontre un certain nombres de difficulté Probleme avec le survol d une animation [ par ohcapitaine ] Bonjour a tous !Voila, je bloque un peu concernant une petite animation que je veux effectuer avec actionScript 3.Mon animation consiste en un carre c


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales