パッケージ | flash.geom |
クラス | public class ColorTransform |
継承 | ColorTransform Object |
サブクラス | Color |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
ColorTransform オブジェクトを表示オブジェクトに適用するときに、各カラーチャンネルの新しい値を算出する方法は次のとおりです。
- 新しい red 値 = (古い red 値 *
redMultiplier
) +redOffset
- 新しい green 値 = (古い green 値 *
greenMultiplier
) +greenOffset
- 新しい blue 値 = (古い blue 値 *
blueMultiplier
) +blueOffset
- 新しい alpha 値 = (古い alpha 値 *
alphaMultiplier
) +alphaOffset
算出後、カラーチャンネル値が 255 よりも大きい場合は 255 に設定されます。0 より小さい場合は 0 に設定されます。
ColorTransform オブジェクトは次のように使用できます。
-
colorTransform
パラメーター(BitmapData クラスのcolorTransform()
メソッド)に設定します。 - Transform オブジェクトの
colorTransform
プロパティとして使用します。Transform オブジェクトは表示オブジェクトのtransform
プロパティとして使用できます。
ColorTransform オブジェクトのメソッドを呼び出すには、コンストラクター new ColorTransform()
を使用して ColorTransform オブジェクトを作成する必要があります。
カラー変換は、ムービークリップ(ロードした SWF オブジェクトなど)の背景色には適用されません。ムービークリップに割り当てられているグラフィックとシンボルにのみ適用されます。
さらに例を参照
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
alphaMultiplier : Number
アルファ透明度チャンネル値に乗算する 10 進数値です。 | ColorTransform | ||
alphaOffset : Number
アルファ透明度チャンネル値に alphaMultiplier 値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。 | ColorTransform | ||
blueMultiplier : Number
青チャンネル値に乗算する 10 進数値です。 | ColorTransform | ||
blueOffset : Number
青チャンネル値に blueMultiplier 値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。 | ColorTransform | ||
color : uint
ColorTransform オブジェクトの RGB カラー値です。 | ColorTransform | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
greenMultiplier : Number
緑チャンネル値に乗算する 10 進数値です。 | ColorTransform | ||
greenOffset : Number
緑チャンネル値に greenMultiplier 値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。 | ColorTransform | ||
redMultiplier : Number
赤チャンネル値に乗算する 10 進数値です。 | ColorTransform | ||
redOffset : Number
赤チャンネル値に redMultiplier 値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。 | ColorTransform |
メソッド | 定義元 | ||
---|---|---|---|
ColorTransform(redMultiplier:Number = 1.0, greenMultiplier:Number = 1.0, blueMultiplier:Number = 1.0, alphaMultiplier:Number = 1.0, redOffset:Number = 0, greenOffset:Number = 0, blueOffset:Number = 0, alphaOffset:Number = 0)
指定されたカラーチャンネル値とアルファ値を持つ ColorTransform オブジェクトを作成します。 | ColorTransform | ||
2 番目のパラメーターで指定された ColorTranform オブジェクトと現在の ColorTransform オブジェクトを連結し、2 つのカラー変換を加算的に組み合わせた結果を現在のオブジェクトに設定します。 | ColorTransform | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
ColorTransform オブジェクトのすべてのプロパティが列挙されたストリングを書式設定して返します。 | ColorTransform | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object |
alphaMultiplier | プロパティ |
public var alphaMultiplier:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
アルファ透明度チャンネル値に乗算する 10 進数値です。
DisplayObject インスタンスの alpha
プロパティを使用して表示オブジェクトのアルファ透明度の値を直接設定すると、alphaMultiplier
プロパティ値(その表示オブジェクトの transform.colorTransform
プロパティ)に影響します。
関連する API エレメント
alphaOffset | プロパティ |
public var alphaOffset:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
アルファ透明度チャンネル値に alphaMultiplier
値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。
blueMultiplier | プロパティ |
public var blueMultiplier:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
青チャンネル値に乗算する 10 進数値です。
blueOffset | プロパティ |
public var blueOffset:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
青チャンネル値に blueMultiplier
値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。
color | プロパティ |
color:uint
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
ColorTransform オブジェクトの RGB カラー値です。
このプロパティを設定すると、それに応じて 3 つのカラーオフセット値(redOffset
、greenOffset
、blueOffset
)が変更され、3 つのカラー乗数値(redMultiplier
、greenMultiplier
、blueMultiplier
)が 0 に設定されます。 アルファ透明度の乗数値とオフセット値は変更されません。
このプロパティに値を渡す場合は、書式 0x RRGGBB を使用します。 RR、GG、および BB はそれぞれ、各カラー成分のオフセットを指定する 2 桁の 16 進数で構成されます。0x は、数値が 16 進数であることを ActionScript コンパイラーに伝えるものです。
実装
public function get color():uint
public function set color(value:uint):void
greenMultiplier | プロパティ |
public var greenMultiplier:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
緑チャンネル値に乗算する 10 進数値です。
greenOffset | プロパティ |
public var greenOffset:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
緑チャンネル値に greenMultiplier
値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。
redMultiplier | プロパティ |
public var redMultiplier:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
赤チャンネル値に乗算する 10 進数値です。
redOffset | プロパティ |
public var redOffset:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
赤チャンネル値に redMultiplier
値を乗算した後に加算する数値です。数値の範囲は -255 ~ 255 です。
ColorTransform | () | コンストラクター |
public function ColorTransform(redMultiplier:Number = 1.0, greenMultiplier:Number = 1.0, blueMultiplier:Number = 1.0, alphaMultiplier:Number = 1.0, redOffset:Number = 0, greenOffset:Number = 0, blueOffset:Number = 0, alphaOffset:Number = 0)
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
指定されたカラーチャンネル値とアルファ値を持つ ColorTransform オブジェクトを作成します。
パラメーターredMultiplier:Number (default = 1.0 ) — 赤の乗数の値(0 ~ 1)です。
| |
greenMultiplier:Number (default = 1.0 ) — 緑の乗数の値(0 ~ 1)です。
| |
blueMultiplier:Number (default = 1.0 ) — 青の乗数の値(0 ~ 1)です。
| |
alphaMultiplier:Number (default = 1.0 ) — アルファ透明度の乗数の値(0 ~ 1)です。
| |
redOffset:Number (default = 0 ) — 赤のカラーチャンネルのオフセット値(-255 ~ 255)です。
| |
greenOffset:Number (default = 0 ) — 緑のカラーチャンネルのオフセット値(-255 ~ 255)です。
| |
blueOffset:Number (default = 0 ) — 青のカラーチャンネルのオフセット値(-255 ~ 255)です。
| |
alphaOffset:Number (default = 0 ) — アルファ透明度のチャンネル値のオフセット(-255 ~ 255)です。
|
concat | () | メソッド |
public function concat(second:flash.geom:ColorTransform):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
second
パラメーターで指定された ColorTranform オブジェクトと現在の ColorTransform オブジェクトを連結し、2 つのカラー変換を加算的に組み合わせた結果を現在のオブジェクトに設定します。連結された ColorTransform オブジェクトを適用する場合、その効果は second
のカラー変換を元のカラー変換の後に適用した場合と同じです。
パラメーター
second:flash.geom:ColorTransform — 現在の ColorTransform オブジェクトと結合する ColorTransform オブジェクトです。
|
toString | () | メソッド |
- コンストラクターが新しい Sprite オブジェクト
target
を作成します。 CustomButton()
コンストラクターはdraw()
メソッドを呼び出します。このメソッドは、グラデーションの四角形をスプライトに描画します。CustomButton()
コンストラクターはスプライトに click イベントリスナーを追加します。これはclickHandler()
メソッドによって処理されます。clickHandler()
メソッドでは、2 つのプロパティが現在のカラー変換のredOffset
プロパティとblueOffset
プロパティに設定されます。それぞれ 25 に調整されます。次に正方形のスプライトのtransform.colorTransform
プロパティが新しいオフセット値を使用するように変更されます。ユーザーが正方形をクリックするたびに、clickHandler()
メソッドを呼び出して、赤のカラー値を増やし、青のカラー値を減らして、正方形の色を変更します。
package { import flash.display.Sprite; import flash.display.GradientType; import flash.geom.ColorTransform; import flash.events.MouseEvent; public class ColorTransformExample extends Sprite { public function ColorTransformExample() { var target:Sprite = new Sprite(); draw(target); addChild(target); target.useHandCursor = true; target.buttonMode = true; target.addEventListener(MouseEvent.CLICK, clickHandler) } public function draw(sprite:Sprite):void { var red:uint = 0xFF0000; var green:uint = 0x00FF00; var blue:uint = 0x0000FF; var size:Number = 100; sprite.graphics.beginGradientFill(GradientType.LINEAR, [red, blue, green], [1, 0.5, 1], [0, 200, 255]); sprite.graphics.drawRect(0, 0, 100, 100); } public function clickHandler(event:MouseEvent):void { var rOffset:Number = transform.colorTransform.redOffset + 25; var bOffset:Number = transform.colorTransform.redOffset - 25; this.transform.colorTransform = new ColorTransform(1, 1, 1, 1, rOffset, 0, bOffset, 0); } } }
Tue Jun 12 2018, 10:34 AM Z