パッケージflash.display
public final class CapsStyle
継承CapsStyle Inheritance Object

CapsStyle クラスは、線の描画で使用されるキャップのスタイルを指定する定数値の列挙です。この定数は、flash.display.Graphics.lineStyle() メソッドの caps パラメータの値として使用されます。キャップの種類として、次の 3 つを指定できます。

例の表示

関連項目

flash.display.Graphics.lineStyle()


パブリックプロパティ
 プロパティ定義
 Inheritedconstructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
パブリックメソッド
 メソッド定義
 InheritedhasOwnProperty(name:String):Boolean
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 InheritedisPrototypeOf(theClass:Object):Boolean
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 InheritedpropertyIsEnumerable(name:String):Boolean
指定されたプロパティが存在し、列挙可能かどうかを示します。
Object
 InheritedsetPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 InheritedtoString():String
指定されたオブジェクトのストリング表現を返します。
Object
 InheritedvalueOf():Object
指定されたオブジェクトのプリミティブ値を返します。
Object
パブリック定数
 定数定義
  NONE : String = "none"
[static] flash.display.Graphics.lineStyle() メソッドの caps パラメータでキャップなしを指定するのに使用します。
CapsStyle
  ROUND : String = "round"
[static] flash.display.Graphics.lineStyle() メソッドの caps パラメータで丸いキャップを指定するのに使用します。
CapsStyle
  SQUARE : String = "square"
[static] flash.display.Graphics.lineStyle() メソッドの caps パラメータで四角形のキャップを指定するのに使用します。
CapsStyle
定数の詳細
NONE定数
public static const NONE:String = "none"

flash.display.Graphics.lineStyle() メソッドの caps パラメータでキャップなしを指定するのに使用します。

ROUND定数 
public static const ROUND:String = "round"

flash.display.Graphics.lineStyle() メソッドの caps パラメータで丸いキャップを指定するのに使用します。

SQUARE定数 
public static const SQUARE:String = "square"

flash.display.Graphics.lineStyle() メソッドの caps パラメータで四角形のキャップを指定するのに使用します。


次の例では、CapsStyleExample クラスを使用して、 線のキャップスタイルがそれぞれ異なる 3 本の平行線を描画します。
  1. それぞれの線のプロパティは、次のように設定されます。
    • 線の長さは 80 ピクセル
    • 境界線の色はオレンジ色
    • 境界線のサイズは 30 ピクセル
    • ハイライトカラーは灰色
    • ハイライトサイズは 0 ピクセル
    • アルファは 1 (単色になる)
    • ピクセルのヒンティングは false に設定 (ピクセル全体に対して線がヒンティングされない)。
    • 線の縮小・拡大モードは通常 (太さを縮小・拡大)
    • 境界線キャップの結合スタイルは MITER
    • マイター限度は 1 (線に近いマイターが切り取られる)
  2. クラスコンストラクタは、 3 つの異なる線のキャップスタイル (なし、丸、四角形) を使用して drawLine() メソッドを 3 度呼び出すことによって、 x = 0、y = 0 を起点とした 3 本の垂直線を作成します。drawLine() メソッドの 3 度の呼び出しごとに、 キャップスタイルと上記のプロパティを使用して垂直線および関連する線ハイライトが描画されます。これらの呼び出しで、 まず新しい Shape オブジェクト child が作成され、次に Graphics クラスのメソッドを使用して 線のスタイルが設定されて線とハイライトが描画されます。child の各インスタンスが 表示リストに追加され、ステージに描画されます。
  3. refreshLayout() メソッドを使用して、y = 80 ピクセル、 起点 x = 80 ピクセル、線のセグメント間の間隔 25 ピクセルで、連結線セグメントが再描画されます。
package {
    import flash.display.CapsStyle;
    import flash.display.DisplayObject;
    import flash.display.Graphics;
    import flash.display.JointStyle;
    import flash.display.LineScaleMode;
    import flash.display.Shape;
    import flash.display.Sprite;

    public class CapsStyleExample extends Sprite {
        private var lineLength:uint            = 80;
        private var borderColor:uint           = 0xFFCC00;
        private var borderSize:uint            = 30;
        private var highlightColor:uint        = 0x666666;
        private var highlightSize:uint         = 0;
        private var gutter:uint                = 25;
        private var borderAlpha:uint           = 1;
        private var borderPixelHinting:Boolean = false;
        private var borderScaleMode:String     = LineScaleMode.NORMAL;
        private var borderJointStyle:String    = JointStyle.MITER;
        private var borderMiterLimit:uint      = 1;

        public function CapsStyleExample() {
            drawLine(CapsStyle.NONE);
            drawLine(CapsStyle.ROUND);
            drawLine(CapsStyle.SQUARE);
            refreshLayout();
        }

        private function drawLine(capsStyle:String):void {
            var child:Shape = new Shape();
            child.graphics.lineStyle(borderSize,
                                     borderColor,
                                     borderAlpha,
                                     borderPixelHinting,
                                     borderScaleMode,
                                     capsStyle,
                                     borderJointStyle,
                                     borderMiterLimit);
            child.graphics.lineTo(0, 0);
            child.graphics.lineTo(0, lineLength);
            child.graphics.endFill();

            child.graphics.moveTo(0, 0);
            child.graphics.lineStyle(highlightSize, highlightColor);
            child.graphics.lineTo(0, 0);
            child.graphics.lineTo(0, lineLength);

            addChild(child);
        }

        private function refreshLayout():void {
            var ln:uint = numChildren;
            var child:DisplayObject;
            var lastChild:DisplayObject = getChildAt(0);
            lastChild.x = lineLength;
            lastChild.y = lineLength;
            for (var i:uint = 1; i < ln; i++) {
                child = getChildAt(i);
                child.x = gutter + lastChild.x + lastChild.width;
                child.y = lineLength;
                lastChild = child;
            }
        }
    }
}