forked from: 文字とか絵とかを用意しておいて、出力
forked from 文字とか絵とかを用意しておいて、出力 (diff: 67)
http://wonderfl.net/code/7d6ad7eb9587215aa84b49e210a201ee93b3a8ea * で座標データを作成してarr7の配列につっこむと絵がかけるー。 * (2010-10-09修正:上のURL間違ってたorz) * 寅って書いてみた→
ActionScript3 source code
/**
* Copyright suica ( http://wonderfl.net/user/suica )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/gb0m
*/
// forked from s26's 文字とか絵とかを用意しておいて、出力
// forked from nengafl's nengafl
/**
* http://wonderfl.net/code/7d6ad7eb9587215aa84b49e210a201ee93b3a8ea
* で座標データを作成してarr7の配列につっこむと絵がかけるー。
* (2010-10-09修正:上のURL間違ってたorz)
* 寅って書いてみた→
*/
package
{
import flash.text.TextFormatAlign;
import flash.text.TextFormat;
import flash.text.TextField;
import flash.display.*;
import flash.events.Event;
import flash.filters.BlurFilter;
public class nenga extends Sprite{
//文字を書く座標
private var arr7:Array = [62,168,62,168,62,168,62,168,62,168,63,167,64,167,66,167,70,167,72,167,78,167,84,167,88,167,93,167,99,167,105,167,112,167,119,167,126,167,132,167,138,167,144,167,150,167,158,167,164,167,171,167,178,167,184,167,190,167,196,167,203,167,212,167,222,168,231,169,240,171,247,173,252,175,258,178,263,181,269,187,273,193,276,198,278,202,279,206,280,212,278,222,276,229,272,237,268,246,263,253,259,258,255,263,249,269,245,273,240,276,236,278,233,279,229,279,226,279,224,279,222,278,219,277,215,275,213,274,211,272,210,271,208,269,205,265,201,259,198,254,194,245,191,238,188,229,185,221,182,212,180,202,179,194,178,185,178,177,178,168,180,160,183,152,185,147,188,143,197,137,205,132,215,128,226,125,235,123,247,123,258,124,276,127,289,130,303,136,315,143,325,149,334,157,342,166,351,176,358,186,365,198,370,208,373,216,375,223,374,231,372,239,369,249,365,258,360,267,355,275,348,286,294,326,263,347,245,358,233,363,223,366,214,366,206,365,197,363,190,360,184,356,179,353,173,348,166,341,159,334,153,327,146,318,139,310,133,303,125,293,117,282,110,272,102,260,95,250,89,240,82,228,77,218,70,206,64,196,60,188,58,181,56,176,54,172,53,170,52,169,52,168,52,168,52,168,52,168,52,168,53,168,54,168,55,168,56,168,56,168,57,168,58,168,58,168,58,168,59,168,60,168,60,168,61,168,62,168,62,168,62,168,62,168,63,168,64,168];
//配列にアクセスするカウント変数
private var num:int = 0;
private var bmp:Bitmap;
public function nenga() {
var bd:BitmapData = new BitmapData(465, 465, true, 0x00000000);
bmp = new Bitmap(bd);
var _b:Sprite = new Sprite();
_b.graphics.beginFill(0x000000, 1);
_b.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
_b.graphics.endFill();
bmp.bitmapData.draw(_b);
addChild(bmp);
stage.addEventListener(Event.ENTER_FRAME, draw_circle);
}
private function draw_circle(e:Event):void{
var circle:Shape=new Shape();//ShapeはSpriteに比べて使用するメモリ容量が少ない。しかし、マウスイベントには対応していない。
circle.graphics.beginFill(0xFFFFFF * Math.random());
//circle.graphics.drawCircle(arr7[num*2], arr7[num*2+1], 5*Math.random()+5);
circle.graphics.drawCircle(0, 0, 8*Math.random()+10);
circle.graphics.endFill();
circle.blendMode=BlendMode.ADD;//色を重ね塗りする際に、加算ブレンドするように指定
circle.x=arr7[num*2]; //キャンバスのX軸
circle.y=arr7[num*2+1]; //キャンバスのY軸
/***
** 色のぼかしを設定
** BlurFilter(x,y,cycle)
** x : 横軸のぼかし量
** y : 縦軸のぼかし量
** cycle : ぼかしの実行回数
**/
circle.filters=[new BlurFilter
(int(5*Math.random())%50+5,
int(5*Math.random())%50+5,
1)];
addChild(circle);
num++;
if(num*2+1 >= arr7.length) {
//描画が終わったイベントの後始末
stage.removeEventListener(Event.ENTER_FRAME,draw_circle);
//描画完了のメッセージ
var finish:TextField = new TextField();
var format:TextFormat = new TextFormat();
format.align = TextFormatAlign.JUSTIFY;
format.color = 0x1188CC;
format.italic = true;
format.size = 40;
format.bold = true;
format.font = "_sans";
finish.text = "Finish!!";
finish.width = 465;
finish.height = 465;
finish.setTextFormat(format);
addChild(finish);
}
}
/*
private function draw_circle(e:Event):void{
var circle:Shape=new Shape();
circle.graphics.beginFill(0xFFFFFF * Math.random());
circle.graphics.drawCircle(arr7[num*2],arr7[num*2+1], 5*Math.random()+5);
circle.graphics.endFill();
circle.blendMode=BlendMode.ADD;
circle.filters=[new BlurFilter(10, 10, 1)];
bmp.bitmapData.draw(circle);
if(num++ >= arr7.length)
num = 0;
}
*/
}
}
