Zitat:
|
Zitat von Alois ach ja, noch etwas Stoff : ActionScript: var w=myMC._width; var h=myMC._height; var greyscale = new flash.display.BitmapData(w,h,true); var bmh=this.createEmptyMovieClip("bmp_holder",3); bmh.attachBitmap(greyscale,1,"auto",true); greyscale.draw(myMC); for(var i=0;i<w;i++){ for(var j=0;j<h;j++){ var pix=greyscale.getPixel(i,j)>>16; /*einfach nur den Rotanteil nutzen bringt meist recht gute Graustufenbilder, aber man kann natürlich auch eine Mischung aus rgb testen*/ pix=pix<<16|pix<<8|pix; greyscale.setPixel(i,j,pix); } }
...habs jetzt aus einer anderen Bastelei von mir rauskopiert, aber das dürfte so gehen... |
statt den for's würde ich while benutzen die sind schneller
ActionScript:
var i = w;
while ( -- i > -1){
var j = h;
while ( -- j > -1){
var pix=greyscale.getPixel(i,j)>>16;
/*einfach nur den Rotanteil nutzen bringt meist
recht gute Graustufenbilder, aber man kann natürlich
auch eine Mischung aus rgb testen*/
pix=pix<<16|pix<<8|pix;
greyscale.setPixel(i,j,pix);
}
}