perlinNoise遊び クリックでリセット。 rが明るさ gがx方向の移動距離 bがy方向の移動距離 cpu_t forked:4favorite:26lines:46license : MIT License modified : 2010-03-02 22:14:56 Embed Tweet // クリックでリセット。 // // rが明るさ // gがx方向の移動距離 // bがy方向の移動距離 // package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.events.MouseEvent; [SWF(width = 465, height = 465)]; public class FlashTest extends Sprite { public function FlashTest() { vectormap = new BitmapData(465, 465); bmpdata = new BitmapData(465, 465, false, 0); addChild(new Bitmap(bmpdata)); stage.addEventListener(MouseEvent.MOUSE_DOWN, function(e:MouseEvent):void { reset(); }); reset(); } private var vectormap:BitmapData; private var bmpdata:BitmapData; private function reset():void { vectormap.perlinNoise(465 * .5, 465 * .5, 3, Math.random() * 0xFFFFFFFF, false, true); // bmpdataをクリア bmpdata.fillRect(bmpdata.rect, 0); // vectormapの全ピクセルに対してループ for (var y:int = 0; y < vectormap.height; y++) { for (var x:int = 0; x < vectormap.width; x++) { // rgb要素を取得 var px:uint = vectormap.getPixel(x, y); var r:int = px >> 16 & 0xFF; var g:int = px >> 8 & 0xFF; var b:int = px & 0xFF; // x,yにg,bを足す var tx:int = x + (g / 0xFF - .5) * 465; var ty:int = y + (b / 0xFF - .5) * 465; // bmpdataの範囲外になってしまったらcontinue if (ty<0 || ty>=bmpdata.height || tx<0 || tx>=bmpdata.width) continue; var col:uint = bmpdata.getPixel(tx, ty); col += 0x010101 * (int)(r * .2); if (col > 0xFFFFFF) col = 0xFFFFFF; bmpdata.setPixel(tx, ty, col); } } } } } Code Fullscreen Preview Fullscreen sabotenbroth.. Louis2009 yabuchany hacker_aft9c.. kt3k jozefchutka tjoen kleinschmidt.. tkinjo alibaba nki2 Kay djankey nupperabo 178ep3 paq sac_p37a1kc9.. kimo0517 kinescript akira_odohir.. k0rin zmaxlin narutohyper _azzip sdkfz181tige.. : 素敵メッシュですね lichtschatte.. : meshrandomness mesh randomness height width MouseEvent.MOUSE_DOWN addEventListener MouseEvent addChild uint Math.random Sprite int sort new page view favorite forked pv1115 forked from: perlinNoise遊び ぐねぐ.. sabotenbrother forked:2 favorite:9lines:52 (diff:33) tag: awesome pv417 perlinNoise play with controls.. aobyrne forked:2 favorite:4lines:350 (diff:406) tag: noise perlin pv500 forked from: perlinNoise遊び yotsu42keisuke forked:0 favorite:2lines:46 (diff:54) pv1224 perlinNoise遊び2 HSVを使う cpu_t forked:1 favorite:16lines:165 (diff:155) tag: BitmapData HSV perlinNoise