気ままにありのままに

ここでは、管理人のFLEXの覚書を気ままにありのままに書いていきま~す。ちょくちょく更新する予定なんでたまにチェックしてね。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

bitmap

どうも。今回はFLEXネタ。

FLEXでBitmapで字を書くっていうのを見たんで、

それをやってみた。

で、できたのはコチラ

参考にしたサイト忘れたから次から気をつけるよん

◆苦労したこと
・2段表示
・2段の表示を別々の字で表示すること

この二つ実現するのに3日かかった

我ながら情けない(^▽^;) 

で、気を取り直してまた、違うやつにチャレンジ

FLEXマスターするのにいつになることやら・・・ がんばろ。

以下ソースコード (人のを参考に書いてます)

---bitmap---

package {
import caurina.transitions.Tweener;

import flash.display.BitmapData;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageQuality;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.geom.Matrix;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;

[SWF(backgroundColor="#000000")]
public class bitmap extends Sprite
{
private var container:Sprite;
private var dtime:Number=0;

public function studyAS()
{
// ステージの設定
stage.frameRate = 20;
stage.quality = StageQuality.LOW;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.addEventListener(Event.RESIZE, onResize);

// コンテナの設定
container = new Sprite;
container.x = stage.stageWidth/2;
container.y = stage.stageHeight/2;
addChild(container);

// 土台のBitmapDataの作成
var bmpd:BitmapData = new BitmapData(500,800,false,0x000000);
var bmpd2:BitmapData = new BitmapData(500,500,false,0x000000);
var text:TextField = new TextField();
var text2:TextField = new TextField();
text.defaultTextFormat = new TextFormat(null,50,0xffffff,true);
text2.defaultTextFormat = new TextFormat(null,50,0xffffff,true);
text.autoSize = TextFieldAutoSize.LEFT;
text2.autoSize = TextFieldAutoSize.LEFT;
text.text = "COCK";
text2.text = "T A I L";
bmpd.draw(text,new Matrix(3, 0, 0, 3, 0, 0));
bmpd2.draw(text2,new Matrix(3, 0, 0, 3, 0, 0));

var BaseSp1:Sprite = new Sprite();
container.addChild(BaseSp1);
BaseSp1.x = -bmpd2.width/2;
BaseSp1.y = -bmpd2.height/2;

var BaseSp:Sprite = new Sprite();
container.addChild(BaseSp);
BaseSp.x = -bmpd.width/2;
BaseSp.y = -bmpd.height/2;

// 文字を点で表す
for(var i:int=0 ; i for(var j:int=0 ; j var p1:uint = bmpd2.getPixel(i,j);
if(p1 == 0xffffff){
var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xffff00,1);
circle1.graphics.drawCircle(0,0,3);
circle1.graphics.endFill();
BaseSp1.addChild(circle1);
circle1.scaleX = circle1.scaleY = 0;
circle1.alpha=0;
circle1.x = Math.random()*750;
circle1.y = Math.random()*300;
p1 = bmpd.getPixel(i,j);
Tweener.addTween(circle1,{scaleX:1, scaleY:1, x:i, y:j, alpha:1, time:2, delay:dtime});
}
var p:uint = bmpd.getPixel(i,j);
if(p == 0xffffff){
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xffff00,1);
circle.graphics.drawCircle(0,0,3);
circle.graphics.endFill();
BaseSp.addChild(circle);
circle.scaleX = circle.scaleY = 0;
circle.alpha=0;
circle.x = Math.random()*750;
circle.y = Math.random()*300;
Tweener.addTween(circle,{scaleX:1, scaleY:1, x:i, y:j, alpha:1, time:2, delay:dtime});
dtime += 0.03;

}
}
}
}


// リサイズ用関数
public function onResize(e:Event):void {
container.x = stage.stageWidth / 2;
container.y = stage.stageHeight / 2;
}
}
}
スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。