Fond d'Image en mosaïque
- AmieCutie
- Newbie


- Inscription: Aoû 17, 2011
- Messages: 12
- Status: Offline
Donc j'ai une barre de navigation fond ajuste son avec le stade et la hauteur est définie dans le fichier XML. Maintenant cela fonctionne très bien, Im tente d'ajouter une image en mosaïque à l'arrière-plan. L'image est la même hauteur que le graphique d'arrière-plan, donc elle doit seulement être répétée sur l'axe des x. Voici mon code, je me sens que quelque chose de petit peut ne pas parce qu'il semble bonne, mais elle ne veut pas travailler.
Code: [ Select ]
protected function _initMenuBg():void
{
var size : Object = StageController.getInstance().getSize();
var h : int = size.h;
var w : int = size.w;
_mainMenuBg = new Sprite();
_mainMenuBg.alpha = 0;
Tweener.addTween(_mainMenuBg, { alpha:1, time:tweenerTime, transition:"easeoutquad" } );
var bgloader = new Loader();
bgloader.load(new URLRequest("assets/images/nav-background.png"));
var bitground:BitmapData = new BitmapData(bgloader.width, bgloader.height, false);
bitground.draw(bgloader);
_mainMenuBg.graphics.beginBitmapFill(bitground, null, true, true);
DrawRectUtil.draw(_mainMenuBg, w, _mainMenuBgHeight, _mainMenuBgColor, _mainMenuBgAlpha);
_mainMenuBg.graphics.endFill();
container.addChildAt(_mainMenuBg, 0);
}
{
var size : Object = StageController.getInstance().getSize();
var h : int = size.h;
var w : int = size.w;
_mainMenuBg = new Sprite();
_mainMenuBg.alpha = 0;
Tweener.addTween(_mainMenuBg, { alpha:1, time:tweenerTime, transition:"easeoutquad" } );
var bgloader = new Loader();
bgloader.load(new URLRequest("assets/images/nav-background.png"));
var bitground:BitmapData = new BitmapData(bgloader.width, bgloader.height, false);
bitground.draw(bgloader);
_mainMenuBg.graphics.beginBitmapFill(bitground, null, true, true);
DrawRectUtil.draw(_mainMenuBg, w, _mainMenuBgHeight, _mainMenuBgColor, _mainMenuBgAlpha);
_mainMenuBg.graphics.endFill();
container.addChildAt(_mainMenuBg, 0);
}
- protected function _initMenuBg():void
- {
- var size : Object = StageController.getInstance().getSize();
- var h : int = size.h;
- var w : int = size.w;
- _mainMenuBg = new Sprite();
- _mainMenuBg.alpha = 0;
- Tweener.addTween(_mainMenuBg, { alpha:1, time:tweenerTime, transition:"easeoutquad" } );
- var bgloader = new Loader();
- bgloader.load(new URLRequest("assets/images/nav-background.png"));
- var bitground:BitmapData = new BitmapData(bgloader.width, bgloader.height, false);
- bitground.draw(bgloader);
- _mainMenuBg.graphics.beginBitmapFill(bitground, null, true, true);
- DrawRectUtil.draw(_mainMenuBg, w, _mainMenuBgHeight, _mainMenuBgColor, _mainMenuBgAlpha);
- _mainMenuBg.graphics.endFill();
- container.addChildAt(_mainMenuBg, 0);
- }
- Anonymous
- Bot


- Inscription: 25 Feb 2008
- Messages: ?
- Loc: Ozzuland
- Status: Online
Juin 12th, 2012, 12:30 am
- ScottG
- Proficient


- Inscription: Juil 06, 2010
- Messages: 266
- Status: Offline
Vous ne savez pas si vous avez trouvé la question encore, mais la seule chose que je peux penser d'est que données bgloader.width, bgloader.height et image ne sont pas définies, puisqu'il y a très peu entre l'appel load() et lorsque vous utilisez l'info.
Prises dehttp://help.adobe.com/en_US/FlashPlatfo ... phics.html
Ils utilisent un écouteur d'événement pour dessiner après que le chargement a terminé à temps pour votre objet loader d'avoir une hauteur, la largeur et l'image de données. Si vous n'avez pas résolu votre problème, j'espère que cela aide un peu
Prises dehttp://help.adobe.com/en_US/FlashPlatfo ... phics.html
ACTIONSCRIPT Code: [ Select ]
package {
import flash.display.Sprite;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.geom.Matrix;
public class Graphics_beginBitmapFillExample extends Sprite {
private var url:String = "image1.jpg";
private var loader:Loader = new Loader();
public function Graphics_beginBitmapFillExample() {
var request:URLRequest = new URLRequest(url);
loader.load(request);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, drawImage);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
private function drawImage(event:Event):void {
var mySprite:Sprite = new Sprite();
var myBitmap:BitmapData = new BitmapData(loader.width, loader.height, false);
myBitmap.draw(loader, new Matrix());
var matrix:Matrix = new Matrix();
matrix.rotate(Math.PI/4);
mySprite.graphics.beginBitmapFill(myBitmap, matrix, true);
mySprite.graphics.drawRect(100, 50, 200, 90);
mySprite.graphics.endFill();
addChild(mySprite);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("Unable to load image: " + url);
}
}
}
import flash.display.Sprite;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.geom.Matrix;
public class Graphics_beginBitmapFillExample extends Sprite {
private var url:String = "image1.jpg";
private var loader:Loader = new Loader();
public function Graphics_beginBitmapFillExample() {
var request:URLRequest = new URLRequest(url);
loader.load(request);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, drawImage);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
private function drawImage(event:Event):void {
var mySprite:Sprite = new Sprite();
var myBitmap:BitmapData = new BitmapData(loader.width, loader.height, false);
myBitmap.draw(loader, new Matrix());
var matrix:Matrix = new Matrix();
matrix.rotate(Math.PI/4);
mySprite.graphics.beginBitmapFill(myBitmap, matrix, true);
mySprite.graphics.drawRect(100, 50, 200, 90);
mySprite.graphics.endFill();
addChild(mySprite);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("Unable to load image: " + url);
}
}
}
- package {
- import flash.display.Sprite;
- import flash.display.BitmapData;
- import flash.display.Loader;
- import flash.net.URLRequest;
- import flash.events.Event;
- import flash.events.IOErrorEvent;
- import flash.geom.Matrix;
- public class Graphics_beginBitmapFillExample extends Sprite {
- private var url:String = "image1.jpg";
- private var loader:Loader = new Loader();
- public function Graphics_beginBitmapFillExample() {
- var request:URLRequest = new URLRequest(url);
- loader.load(request);
- loader.contentLoaderInfo.addEventListener(Event.COMPLETE, drawImage);
- loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
- }
- private function drawImage(event:Event):void {
- var mySprite:Sprite = new Sprite();
- var myBitmap:BitmapData = new BitmapData(loader.width, loader.height, false);
- myBitmap.draw(loader, new Matrix());
- var matrix:Matrix = new Matrix();
- matrix.rotate(Math.PI/4);
- mySprite.graphics.beginBitmapFill(myBitmap, matrix, true);
- mySprite.graphics.drawRect(100, 50, 200, 90);
- mySprite.graphics.endFill();
- addChild(mySprite);
- }
- private function ioErrorHandler(event:IOErrorEvent):void {
- trace("Unable to load image: " + url);
- }
- }
- }
Ils utilisent un écouteur d'événement pour dessiner après que le chargement a terminé à temps pour votre objet loader d'avoir une hauteur, la largeur et l'image de données. Si vous n'avez pas résolu votre problème, j'espère que cela aide un peu
Page 1 sur 1
Pour répondre à ce sujet, vous devez vous connecter ou vous enregistrer. Il est gratuit.
Afficher de l'information
- Total des messages de ce sujet: 2 messages
- Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 52 invités
- Vous ne pouvez pas poster de nouveaux sujets
- Vous ne pouvez pas répondre aux sujets
- Vous ne pouvez pas éditer vos messages
- Vous ne pouvez pas supprimer vos messages
- Vous ne pouvez pas joindre des fichiers
