サイトトップ

Director Flash 書籍 業務内容 プロフィール

Macromedia Flash非公式テクニカルノート

starling.display.Quadクラス

ID: FN1201007 Platform: All Version: CS5/ActionScript 3.0 Runtime: Flash Player 11/AIR 3.0

Quadクラス
パッケージ starling.display
継承 Quad → DisplayObject → EventDispatcher → Object
Quad()コンストラクタ
文法 public function Quad(width:Number, height:Number, color:uint = 0xFFFFFF, premultipliedAlpha:Boolean = true)
概要 引数に定められた大きさとカラーのQuadインスタンスをつくる。
引数

width:Number − ピクセルを単位とするインスタンスの幅。

height:Number − ピクセルを単位とするインスタンスの高さ。

color:uint − インスタンスを塗る単一色のカラー。デフォルト値は白(0xFFFFFF)。

premultipliedAlpha:Boolean − カラーよりもアルファが先に適用されるかどうかを定めるブール値。デフォルト値は先にアルファを適用するtrue

getVertexAlpha()メソッド
文法 public function getVertexAlpha(vertexID:int):Number
概要 引数に渡したインデックスの頂点のアルファ値を返す。
引数

vertexID:int − 頂点を示す整数インデックス。

戻り値 アルファを示す数値。原則として、0〜1.0の値とする。
getVertexColor()メソッド
文法 public function getVertexColor(vertexID:int):uint
概要 引数に渡したインデックスの頂点のカラー値を返す。
引数

vertexID:int − 頂点を示す整数インデックス。

戻り値 RGBカラー値を示す整数。
setVertexAlpha()メソッド
文法 public function setVertexAlpha(vertexID:int, alpha:Number):void
概要 引数に渡したインデックスの頂点にアルファ値を定める。
引数

vertexID:int − 頂点を示す整数インデックス。

alpha:Number − アルファを示す数値。原則として、0〜1.0の値とする。

戻り値 なし。
setVertexColor()メソッド
文法 public function setVertexColor(vertexID:int, color:uint):void
概要 引数に渡したインデックスの頂点にアルファ値を定める。
引数

vertexID:int − 頂点を示す整数インデックス。

color:uint − RGBカラー値を示す整数。

戻り値 なし。

説明
Quadオブジェクトは、四角形を表します。カラーには、単色またはグラデーションが定められます。色は頂点ごとに設定します。異なる色が指定された頂点の間は、Quadオブジェクトの領域の中で滑らかに移り変わります。

Quadオブジェクトの頂点には、インデックスがつぎのように決まっています。ですから、基本的な線状グラデーションを描くには、たとえば頂点1と0にひとつの色を定め、頂点2と3には別の色を割当てます。

0 1
 |   | 
2 3

Quadインスタンスにアルファを設定するときに、注意することがふたつあります。第1に、コンストラクタメソッドの第4引数です。この値をtrueにすると、頂点にアルファを設定してからカラーが適用されます。たとえば、4つの頂点にそれぞれ異なったカラーを定めたQuadインスタンスがあります(図001)。

図001■4頂点に異なるカラーを定めたQuadインスタンス
0: 0x00FFFF 1: 0xFF0000
図001
2: 0x00FF00 3: 0x0000FF

このQuadインスタンスのひとつの頂点(0)にアルファとして0を設定します。すると、Quad()コンストラクタに渡した第4引数の値によって、画像は下図002のように変わります(なお、背景は白0xFFFFFFです)。

図002■ひとつの頂点にアルファ0を定めたときコンストラクタの第4引数値による違い
図002左図
第4引数: true
図002右図
第4引数: false

アルファについての第2の注意は、Quad.setVertexAlpha()メソッドをいつ呼出すかです。呼出しは、Quad.setVertexColor()メソッドよりも後にしなければなりません。Quad.setVertexColor()メソッドを呼出すと、その頂点のアルファは1に設定し直されてしまうからです。

myQuad.setVertexAlpha(0, 0);
myQuad.setVertexColor(0, 0x0);
var nColor:int = myQuad.getVertexAlpha(0);
// nColorの値は1になる

参考
[Starling Framework Reference] > [Quad]


作成者: 野中文雄
作成日: 2012年1月29日


Copyright © 2001-2012 Fumio Nonaka.  All rights reserved.