public static const NONE:String = "none"| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
caps パラメータ(flash.display.Graphics.lineStyle() メソッドのパラメータ)でキャップなしを指定するのに使用します。
public static const ROUND:String = "round"| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
caps パラメータ(flash.display.Graphics.lineStyle() メソッドのパラメータ)で丸いキャップを指定するのに使用します。
public static const SQUARE:String = "square"| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
caps パラメータ(flash.display.Graphics.lineStyle() メソッドのパラメータ)で四角形のキャップを指定するのに使用します。
次の例では、
CapsStyleExample クラスを使用して、線のキャップスタイルがそれぞれ異なる 3 本の平行線を描画します。
-
それぞれの線のプロパティは、次のように設定されます。
- 線の長さは 80 ピクセル
- 境界線の色はオレンジ色
- 境界線のサイズは 30 ピクセル
- ハイライトカラーは灰色
- ハイライトサイズは 0 ピクセル
- アルファは 1(単色になる)
- ピクセルのヒンティングは false に設定(ピクセル全体に対して線がヒンティングされない)
- 線の縮小 / 拡大モードは通常(太さを縮小 / 拡大)
-
境界線キャップの結合スタイルは
MITER
- マイター限度は 1(線に近いマイターが切り取られる)
-
クラスコンストラクタは、x = 0、y = 0 から始まる 3 本の垂直線を、それぞれ異なる線のキャップのスタイル(なし、丸、角)を使用して
drawLine() メソッドを 3 回呼び出して作成します。drawLine() メソッドの 3 回の呼び出しごとに、キャップスタイルと上記のプロパティを使用して垂直線および関連する線ハイライトが描画されます。まず新しい Shape オブジェクト child が作成され、次に Graphics クラスのメソッドを使用して線のスタイルが設定されて線とハイライトが描画されます。各 child インスタンスが表示リストに追加され、ステージに描画されます。
-
連結線セグメントは、
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;
}
}
}
}