Flash 学習 ソフト アニメーション ActionScript
Top | Back | Next
Color クラス

 色の変更など色に関わる処理を行うにはColorオブジェクトを作成する必要があります。ボタンを押した時にターゲット指定したムービクリップの色を変えたり、ステージにロードされたら指定した色に変えたり、用途は様々です。


Color オブジェクト生成

new Color(ムービークリップのインスタンス名) : Color

 Color オブジェクトを生成するにはnew演算子を使用します。その後に対象となるムービークリップを指定します。(インスタンス名)
new Colorの部分がコンストラクタです。Colorオブジェクトのメソッドを呼び出すためには、まずはnew Color()を使用してColorオブジェクト作成する必要があります。: Color の部分はこの型はColorですよ〜という厳密な型指定を行っています。Array(配列)なら:Arrayの様にここでも型指定をしています。


次の例ではステージに配置されたインスタンス名my_mcというムービークリップがsetRGB( )を使用して青色にしています。
var my_color:Color = new Color(my_mc);
my_color.setRGB(0x0000ff);

 1フレーム目に上記のスクリプトを記述してステージにmy_mcというインスタンス名のムービークリップを配置して、パブリッシュするとmy_mcが青い色になっています。もちろんこの場合my_mcの色は青以外で作成してくださいね。

 ここで使用しているsetRGB()というメソッドの()内にはRGBカラー値が入ります。RGBカラーは16進数で表現します。今回青色なので0x0000ffとしています。0x0000ffの最初の0xはこの数値が16進数だという事をActionScriptコンパイルに伝えています。

 

 RGB全てがFだとカラーが白、0だと黒になります。0〜Fまで16段階それが16段階が16個なので16 x 16 = 256色の表現が可能です。 Rはred、Gはgreen、Bはblueの頭文字をとっています。つまりBの部分を全てFにして、残りを0にすれば純粋?なBlueとなります。
RGB
RGBカラー値について

  カラー16進数は(RGBカラー値とも言います)「数字の0〜9」と「アルファベットのaf」を組み合わせた6桁の数字の頭に「#」を付けて色を表示する方法です。数字の増減によって色の明るさが変化します。6桁の数字は2つセットで区切られており、それぞれ左から赤、緑、青を示しています。この3色の明るさによって様々な色を表示させます。「0」が最も暗く、「F」が最も明るいという意味です。また、赤、緑、青ごとにそれぞれ同じ文字や数字を使い、「0,3,6,9,c,f 」のいずれかであるもの例えば #0033ccなどをWebセーフカラーと呼び、これらはブラウザやバージョンに左右されずに再現される216色となっています。


 次の例ではボタンを押したらをmy_mcの色を変えるようにしています。

var my_color:Color = new Color(my_mc);
1フレーム目に上記のコードを記述してmy_colorという部品を作ります。ステージにはmy_mcというムービークリップを配置しておきます。(このmy_mcの色をボタンを押したら赤色になるようにします。)
on (release) {
my_color.setRGB(0xFF0000);
}

次に上記のコードをボタンタイプのシンボルに記述します。パブリッシュしてボタンを押して、my_mcの色が赤になれば成功です。

Color オブジェクトのカラー変換情報を設定
 Color オブジェクトのカラーを変換する情報を設定する為にはcolorTransformObjectパラメータ(赤、緑、青の成分のパーセントとオフセット値、透明度)を指定して変換情報を設定する事ができます。

ちょっと難しいかもしれませんが、colorTransformObjectは赤、緑、青成分の%とオフセット値、アルファ値(透明度)のパラメータを持ったオブジェクトです。

できあがった変換情報をColor オブジェクトと関連付けさせる為にはsetTransformメソッドを使用します。

ColorTransformObject カラートランフォームオブジェクトTransfromで1つの単語です。

カラー変換情報を指定するためのプロパティ
カラー変換情報を指定するためには赤は何%、透明度は何%などのプロパティが必要となります。
  • ra は、赤の成分のパーセント (-100 〜 100) です。
  • rb は、赤の成分のオフセット (-255 〜 255) です。
  • ga は、緑の成分のパーセント (-100 〜 100) です。
  • gb は、緑の成分のオフセット (-255 〜 255) です。
  • ba は、青の成分のパーセント (-100 〜 100) です。
  • bb は、青の成分のオフセット (-255 〜 255) です。
  • aa は、アルファのパーセント (-100 〜 100) です。
  • ab は、アルファのオフセット (-255 〜 255) です。

colorTransFromオブジェクトパラメータを作成する方法は下記の通りです。コロン『:』を使って型指定しています。

var myColorTransform:Object = { ra:100, rb:60, ga:100, gb:120, ba:100, bb:120, aa:100, ab: 100}
 

上記と同じ値を設定してみてください。

 
var my_color:Color = new Color(my_mc);
var myColorTransform:Object = { ra:10, rb:-101, ga:40, gb:255, ba:-50, bb:80, aa:40, ab: 70};
my_color.setTransform(myColorTransform);

・まずはコンストラクタを使ってmy_colorというColorオブジェクトを作ります。
・次に値を指定してmyColorTransFormオブジェクトを作成します。
・最後にsetTransformメソッドを使用してColor オブジェクトにmyColorTransformオブジェクトを関連付けます。


Color クラスのメソッド

メソッド

説明

Color.getRGB()

最後の setRGB() 呼び出しで設定された RGB 値を取得します。

Color.getTransform()

最後の setTransform() 呼び出しで設定された変換情報を取得します。

Color.setRGB()

Color オブジェクトに RGB 値の 16 進表現を設定します。

Color.setTransform()

Color オブジェクトにカラー変換を設定します。


トップへ
Top | Back | Next