flash.display
public final class JointStyle
继承JointStyle Inheritance Object

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

JointStyle 类是指定要在绘制线条中使用的联接点样式的常数值枚举。提供的这些常数用作 flash.display.Graphics.lineStyle() 方法的 joints 参数中的值。此方法支持三种类型的连接:尖角、圆角和斜角,如下例所示:

MITER、ROUND 和 BEVEL

查看示例

另请参见

flash.display.Graphics.lineStyle()


公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
公共方法
 方法定义方
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
  BEVEL : String = "bevel"
[静态] 在 flash.display.Graphics.lineStyle() 方法的 joints 参数中指定斜角连接。
JointStyle
  MITER : String = "miter"
[静态] 在 flash.display.Graphics.lineStyle() 方法的 joints 参数中指定尖角连接。
JointStyle
  ROUND : String = "round"
[静态] 在 flash.display.Graphics.lineStyle() 方法的 joints 参数中指定圆角连接。
JointStyle
常量详细信息
BEVEL常量
public static const BEVEL:String = "bevel"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

flash.display.Graphics.lineStyle() 方法的 joints 参数中指定斜角连接。

MITER常量 
public static const MITER:String = "miter"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

flash.display.Graphics.lineStyle() 方法的 joints 参数中指定尖角连接。

ROUND常量 
public static const ROUND:String = "round"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

flash.display.Graphics.lineStyle() 方法的 joints 参数中指定圆角连接。

示例 如何使用示例
JointStyleExample.as

下例使用 JointStyleExample 类显示应用于三组连接线的三种不同联接点样式的结果。执行下列步骤可完成该任务:
  1. 每条线的属性设置如下所示:
    • 将线条长度设置为 80 像素。
    • 将边框颜色设置为橙色。
    • 将边框大小设置为 30 像素。
    • 将加亮颜色设置为灰色。
    • 将加亮大小设置为 0 像素。
    • 将 Alpha 设置为 1,使其成为实线。
    • 将像素提示设置为 false(不提示笔触采用全部像素)。
    • 将线条缩放模式设置为正常,这将缩放粗细。
    • 声明了边框端点和尖角限制,但未进行设置,因此使用默认值。
  2. 类构造函数创建了三组两条连接的线段。线段的起始位置为 x = 0, y = 0,这是通过使用三种联接点样式(尖角、圆角和斜角)调用 doDrawCorner() 方法三次实现的。对 doDrawCorner() 的三次调用均使用先前列出的联接点样式和属性,来绘制两条连接的线段以及关联的线条加亮效果。实现此操作的方法是:首先创建一个新的 Shape 对象 child,然后使用 Graphics 类的方法来设置线条样式,并绘制线条和加亮效果。child 的每个实例都添加到显示列表中,并且在舞台上快速绘制。
  3. 然后使用 refreshLayout() 方法,在 y = 80 像素处并从 x = 80 像素处开始以 25 像素的线段间距重绘连接的线段。
package {
    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 JointStyleExample extends Sprite {
        private var size: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 borderCaps:String;
        private var borderMiterLimit:uint;

        public function JointStyleExample() {
            doDrawCorner(JointStyle.MITER);
            doDrawCorner(JointStyle.ROUND);
            doDrawCorner(JointStyle.BEVEL);
            refreshLayout();
        }

        private function doDrawCorner(jointStyle:String):void {
            var halfSize:uint = Math.round(size / 2);
            var child:Shape = new Shape();
            child.graphics.lineStyle(borderSize,
                                     borderColor,
                                     borderAlpha,
                                     borderPixelHinting,
                                     borderScaleMode,
                                     borderCaps,
                                     jointStyle,
                                     borderMiterLimit);
            child.graphics.lineTo(0, 0);
            child.graphics.lineTo(size, 0);
            child.graphics.lineTo(halfSize, size);
            child.graphics.endFill();

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

            addChild(child);
        }

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