Bonjour

Depuis un bout de temps j'essaye de remplir un BitmapData par le contenu d'un Loader.content (image.jpg et png) et ensuite le dessiner sur une Shape.
Tout ce que j'obtiens sur la Shape est un rectangle blanc avec le jpg et rien avec le png.

La création d'un BitmapData

(Image = new BitmapData(100, 60, false, 0x0000ff); )

donne bien un rectangle bleu sur Shape, mais l'ajout du code

var rect2:Rectangle = new Rectangle(20, 20, 20, 20);
Image.fillRect(rect2, 0x00ff00);

donne toujours ce meme rectangle bleu et pas de carré vert dessus.

Donc ma question est pourquoi ces BitmapData ne sont pas modifiés.
Si quelqu'un connaissait un bout de réponse ce serait très sympa.

Je joint mon code

Merci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class ImageLoader //extends Sprite
		{
		public var Imgloader:Loader;
		public var UrlImage:URLRequest;
		public var Plan:Shape;
		public var TxtResult:String;
		public var Image:BitmapData;
		public var Bitmap1:Bitmap;
		//public var Bitmap2:Bitmap;
 
		public function ImageLoader(_UrlImage:String, _Plan:Shape) 
			{
			Plan		= _Plan;
			UrlImage 	= new URLRequest(_UrlImage);
 
			Image 		= new BitmapData(100, 60, false, 0x0000ff);
			//Bitmap2		= new Bitmap(Image);
			var rect2:Rectangle = new Rectangle(20, 20, 20, 20);
			Image.fillRect(rect2, 0x00ff00);
			//Bitmap2.bitmapData.fillRect(rect2, 0x00ff00);
			}
 
		public function Configure()
			{
			Imgloader = new Loader();
			Imgloader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
			Imgloader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            Imgloader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
			Imgloader.load(UrlImage);
			}
 
		private function progressHandler(event: ProgressEvent):void 
			{
            trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        	}
 
		public function completeHandler(e:Event):void 
			{
			Bitmap1 = e.target.content as Bitmap;
    		//addChild(Bitmap1);}
        	}