public static const NONE:String = "none"
运行时版本: | AIR 1.0 Flash Player 9 |
用于在 flash.display.Graphics.lineStyle()
方法的 caps
参数中指定没有端点。
public static const ROUND:String = "round"
运行时版本: | AIR 1.0 Flash Player 9 |
用于在 flash.display.Graphics.lineStyle()
方法的 caps
参数中指定圆头端点。
public static const SQUARE:String = "square"
运行时版本: | AIR 1.0 Flash Player 9 |
用于在 flash.display.Graphics.lineStyle()
方法的 caps
参数中指定方头端点。
下例使用
CapsStyleExample
类绘制三条平行线,并且每条平行线具有不同的线条端点样式。
-
每条线的属性设置如下所示:
- 将线条长度设置为 80 像素。
- 将边框颜色设置为橙色。
- 将边框大小设置为 30 像素。
- 将加亮颜色设置为灰色。
- 加亮大小设置为 0 像素。
- 将 Alpha 设置为 1,使其成为实线。
- 将像素提示设置为 false(不提示笔触采用全部像素)。
- 将线条缩放模式设置为正常,这将缩放粗细。
-
边框端点的联接点样式设置为
MITER
。
- 尖角限制设置为 1,指示在接近线条处切断尖角。
-
类构造函数以 x = 0, y = 0 为起点创建三条垂直线,方法是使用三种不同的线条端点样式(无、圆头和方头)对
drawLine()
方法进行三次调用。drawLine()
方法的每次调用(共三次)都使用先前列出的端点样式和属性来绘制垂直线和相关线条加亮效果。这些调用首先创建一个新的 child
Shape 对象,然后使用 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;
}
}
}
}