この記事のURL

http://www.dango-itimi.com/blog/archives/2006/000914.html


FLASH tips リアルタイム 縁取り

指定したSpriteクラス内の描画データ周囲1ピクセルに、指定カラーをリアルタイムで付与するスクリプトを作成(AS3)。
Bitmap.drawメソッドでは、コピー対象となるオブジェクトの負の座標に位置する描画データはコピーできないものかと思っておりましたが、第二パラメータにMatrixオブジェクトを指定すれば可能だったのですね。Helpにしっかりと書いてありました。

コピー対象となるSpriteオブジェクト(spr)の負のX座標 -10ピクセルまでコピーしたい場合、以下のコードでBitmapDataにdrawが可能となります。

var n:int = 10;
var m:Matrix = new Matrix();
m.translate(n, 0);
var bmd:BitmapData = new BitmapData( spr.width + n, spr.height, true, 0x00000000 );
bmd.draw( spr, m );

■サンプル(※要FlashPlayer9)

サンプルではカバの周囲に白色のピクセルを付与しています。

ピクセル幅を任意に設定できるようにし、ベクターデータに付与させるようにしても面白そうですが、処理行数が増えるので保留。

[ FLASH ] [ tips ] 投稿者 siratama : 2006年10月29日 00:10

トラックバック

http://www.dango-itimi.com/blog/mt-tb.cgi/874

コメント

以下コメントを書き込むだけでは、管理人には通知が行われません。通知を行いたい場合、管理人の書き込みに「返信」を押してコメントをしていただくか、あるいは Google+, Twitter へご連絡ください。




[EDIT]