[ascoders] Komisches Problem mit Bitmap Draw Funktion.
- From: "Peter Oliver Geller" <nc-gellerpe@xxxxxxxxxxxxx>
- To: <ascoders@xxxxxxxxxxxxx>
- Date: Thu, 14 Dec 2006 14:48:30 +0100
Hi Jungs und Mädels,
habe ein sehr dummes Problem und zwar bin ich komischerweise nicht in der
Lage eine bereits geladene Bitmap nicht mit der Bitmap Draw funktion online
nach zu zeichenen. Lokal funktioniert das einwandfrei nur wenn ich die swf
online aufspiele klappts nicht.
Ich habe hier mal eine Funktion aus einem aktuellen Projekt rausgerissen und
bin jetzt beim minimal Test auf noch ein kurioses Problem gestossen.
1. Die Draw Funktion funktioniert auf meinem Live Server nicht, lokal schon.
2. Ich bekomme in der Firefox Extension eine Meldung *** Security Sandbox
Violation *** obwohl ich die crossdomain.xml auf * gesetzt ist.
Meine crossdomain Policy liegt auf www.pixel-gallery.com/crossdomain.xml
und sieht so aus, sollte also eigentlich auch kein Sicherheitsproblem mehr
auftauchen.
<cross-domain-policy>
<allow-access-from domain="www.nomimikry.com" />
<allow-access-from domain="nomimikry.com" />
<allow-access-from domain="*" />
</cross-domain-policy>
Ich habe sogar in meiner verzweiflung nochmal eine Prototype Funktion für
MCs genutzt und weil ich mir mitlerweile mit dem Lade- bzw.
Initalisierungsvorgang von Flash unsicher war ein Mousedown Event benutzt
welches die Draw bzw. Snapshot funktion ausführt und zwar dann wenn ich das
geladene Bild welches gezeichnet werden soll auch wirklich visuell vorhanden
ist.
Bitte entschuldigt den Code aber der ist durch die verschiedenen Tests ein
klein wenig zerschossen, habe aber soweit wie möglich alles rausgenommen und
sollte eigentlich zu lesen sein ;) Wie gesagt lokal funktioniert alles super
nur online von der anderen Domain nicht mehr.
Sprich sollte einer von Euch in der Lage sein das mal Domainübergreifend auf
seinem Server zu testen, wird er wahrscheinlich auch feststellen es geht
nicht.
Vielleicht kennt ja jemand von Euch das Problem :)
Grüße und Danke
Peter
import flash.geom.Matrix;
import flash.display.BitmapData;
this.createEmptyMovieClip("holder_mc",1);
this.createEmptyMovieClip("draw_mc",2);
this.holder_mc._rotation = -2;
this.draw_mc._rotation = -2;
this.draw_mc._y = 180; // Das Bild ist 180 Pixel hoch, somit sind die beiden
MCs untereinander
var image;
var tmpbmp;
var imageMcLoader:MovieClipLoader = new MovieClipLoader();
var imageListener:Object = new Object();
imageListener.onLoadProgress = function(target:MovieClip,
bytesLoaded:Number, bytesTotal:Number):Void {
//trace(target + ".onLoadProgress with " + bytesLoaded + " bytes of " +
bytesTotal);
}
imageListener.onLoadStart = function(target:MovieClip) {
}
imageListener.onLoadInit = function(target:MovieClip):Void {
//tempbmp = new BitmapData(path.holder_mc._width, path.holder_mc._height,
true, 0xFFBEFEF5);
//path.image_mc.attachBitmap(tempbmp, 1, "auto", true);
//tempbmp.draw(path.holder_mc);
}
imageListener.onLoadComplete = function(target:MovieClip):Void {
trace("GELADEN");
}
imageListener.onLoadError = function():Void {
trace("Bild konnte nicht geladen werden");
}
imageMcLoader.addListener(imageListener);
imageMcLoader.loadClip("http://www.pixel-gallery.com/devopen/unifa/brands/lo
go1.jpg", holder_mc);
// Die Funktion simuliert eigentlich den gleichen Code den ich oben
auskommentiert habe wenn der LoadInit ausgeführt wird.
MovieClip.prototype.attachSnapshot = function(source:MovieClip):Void
{
trace("HALLO");
var bmpData:Object = new flash.display.BitmapData(source._width,
source._height, true, 0x00FFFFFF);
bmpData.draw(source);
this.attachBitmap(bmpData, this.getNextHighestDepth(), "auto", true);
delete bmpData;
};
this.onMouseDown = function() {
trace("MOUSE DOWN");
draw_mc.attachSnapshot(holder_mc);
}
::::::::::::::::::::::::::::::::::::::::::::::::::
Peter Oliver Geller
virtual effects artist
interactive design & development
Lindenstr. 14 50674 Cologne
0221 - 92 42 81 52 phone
<http://www.pixel-gallery.com/> www.pixel-gallery.com
<mailto:info@xxxxxxxxxxxxxxxxx> info@xxxxxxxxxxxxxxxxx
::::::::::::::::::::::::::::::::::::::::::::::::::
Other related posts:
- » [ascoders] Komisches Problem mit Bitmap Draw Funktion.