graphics.drawGraphicsData (3)
2009/06/07 14:51 - AS3.0
Graphics クラスのメソッドをごっそりクラスに入れ替え、そのクラスインスタンスを突っ込んだ Vector を引数にして描画するメソッド graphics.drawGraphicsData。
今回はメソッドとクラスの対応状態を見てみます。
まずは塗りから。
塗り
塗りは純粋に1対1対応です。
代名詞的な名称のメソッド beginFill() に対応するクラスは GraphicsSolidFill となります。 タイプ数は増えましたが、分かりやすくなって良かったんではないでしょうか。
beginShaderFill() というのは、Flash Player 10 から加わった、シェーダー塗りなるものを指定するメソッドです。
次は線。
線
線を定義するメソッドは lineStyle() と lineGradientStyle() の2種類がありましたが、クラスは GraphicsStroke の一つに統合されました。
じゃあ単色の線とグラデーションの線はどうやって描き分けるんだよ、って話ですが、GraphicsStroke には fill というプロパティがあり、これで線の塗りつぶし状態を指定するそうな。 で、この fill プロパティ には「塗り」のところで説明したシェイプ塗りを指定するクラスを割り当てるとのこと。
というわけで、Flash Player 10 からは線の種類が4つになるわけです。以下対応表。
メソッド | GraphicsStroke.fill |
---|---|
graphics.lineStyle() | GraphicsSolidFill |
graphics.lineBitmapStyle() | GraphicsBitmapFill |
graphics.lineGradientStyle() | GraphicsGradientFill |
graphics.lineShaderStyle() | GraphicsShaderFill |
次はパスについて。
パス
これは今までの描画メソッドの使い方から考えると二段飛びになります。
ホップは以前説明した moveTo() や lineTo()、curveTo() から graphics.drawPath() への切り替え。
ステップは drawPath() メソッドから GraphicsPath クラスへの切り替えです。
メソッド | クラス |
---|---|
graphics.drawPath() | GraphicsPath |
drawPath()と GraphicsPath はメソッドかクラスかの違いだけで、学習上は同じものと看做してよろしいかと。
次回は Flash Player 9 で lineTo() を使って線を描いていたときと、Flash Player 10 で drawPath あるいは GraphicsPath を使って線を描くときとの微妙な差異について。
関連エントリー