merge (BitmapData.merge メソッド)

public merge(sourceBitmap: BitmapData , sourceRect: Rectangle , destPoint: Point , redMult: Number , greenMult: Number , blueMult: Number , alphaMult: Number ) : Void

ソースイメージとターゲットイメージをチャンネルごとにブレンドします。チャンネルごとに次の式を使用します。

new red dest = (red source * redMult) + (red dest * (256 - redMult) / 256;

redMult 値、greenMult 値、blueMult 値、および alphaMult 値は、カラーチャンネルごとに使用する乗数になります。指定できる範囲は 0 ~ 256 です。

対応バージョン : ActionScript 1.0、Flash Player 8

パラメータ

sourceBitmap:BitmapData - 使用する入力ビットマップイメージ。ソースイメージは、別の BitmapData オブジェクトにすることも、現在の BitmapData オブジェクトを参照することもできます。

sourceRect:Rectangle - 入力として使用するソースイメージの領域を定義する矩形。

destPoint:Point - ソース矩形の左上隅に対応するターゲットイメージ (現在の BitmapData インスタンス) 内のポイント。

redMult:Number - 赤チャンネル値と乗算する数値。

greenMult:Number - 緑チャンネル値と乗算する数値。

blueMult:Number - 青チャンネル値と乗算する数値。

alphaMult:Number - アルファ透明度の値と乗算する数値。

次の例では、ある BitmapData の部分と他の BitmapData を結合する方法を示します。

import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;

var bitmapData_1:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var bitmapData_2:BitmapData = new BitmapData(100, 80, false, 0x00FF0000);

var mc_1:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_1.attachBitmap(bitmapData_1, this.getNextHighestDepth());

var mc_2:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_2.attachBitmap(bitmapData_2, this.getNextHighestDepth());
mc_2._x = 101;

mc_1.onPress = function() {
    bitmapData_1.merge(bitmapData_2, new Rectangle(0, 0, 50, 40), new Point(25, 20), 128, 0, 0, 0);
}

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00001412.html