| 套件 | flash.display |
| 類別 | public final class JointStyle |
| 繼承 | JointStyle Object |
| 語言版本: | ActionScript 3.0 |
| 執行階段版本: | AIR 1.0, Flash Player 9 |
flash.display.Graphics.lineStyle() 方法的 joints 參數中。 此方法支援三種類型的接合: 尖角、圓角,與斜角,如下所示:
相關 API 元素
公用常數
| 常數 | 定義自 | ||
|---|---|---|---|
| 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 類別,顯示三種不同的接合樣式套用至三組連接線的結果。 您可以執行下列步驟來完成這項工作:
- 每條線的屬性設定如下:
- 線條長度設為 80 像素。
- 邊界顏色設為橘色。
- 邊界大小設為 30 像素。
- 反白標示顏色設為灰階。
- 反白標示大小設為 0 像素。
- Alpha 值將設為 1,讓顏色變成純色。
- 像素提示功能設為 false (未提示筆畫以使用完整像素)。
- 線條縮放模式設為正常,以便調整粗細。
- 宣告但不設定邊界端點與尖角樣式,因此會採用預設值。
- 此類別建構函式會建立由兩條相接線段所組成的三組線。 藉由使用三種不同的線條接合樣式 (尖角、圓角與斜角),呼叫
doDrawCorner()方法三次,在起始座標為 x = 0, y = 0 處建立這些線段。 對doDrawCorner()方法的三次呼叫每一次都會使用先前所列的接合樣式與屬性,繪製兩條連接線段與相關的反白標示線條。 首先建立新的 Shape 物件child,然後再使用 Graphics 類別的方法,設定線條樣式並繪製線條和反白標示。 每個child的實體都會加入至顯示清單,並立即在舞台上繪製出來。 - 連接的線段會使用
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;
}
}
}
}
Tue Jun 12 2018, 03:47 PM Z
隱藏繼承公用屬性
顯示繼承公用屬性