public static const BEVEL:String = "bevel"
| Player 버전 : | Flash Player 9 |
flash.display.Graphics.lineStyle() 메서드의 joints 매개 변수에 경사 연결을 지정합니다.
public static const MITER:String = "miter"
| Player 버전 : | Flash Player 9 |
flash.display.Graphics.lineStyle() 메서드의 joints 매개 변수에 연귀 연결을 지정합니다.
public static const ROUND:String = "round"
| Player 버전 : | Flash Player 9 |
flash.display.Graphics.lineStyle() 메서드의 joints 매개 변수에 둥근 연결을 지정합니다.
다음 예제에서는 JointStyleExample 클래스를 사용하여 3개의 결합된 선에 서로 다른 3개의 연결 스타일이 적용된 결과를 보여 줍니다. 이는 다음 단계로 이루어집니다.
- 각 선의 속성은 다음과 같이 설정됩니다.
- 선 길이는 80픽셀로 설정됩니다.
- 테두리 색상은 주황색으로 설정됩니다.
- 테두리 크기는 30픽셀로 설정됩니다.
- 강조 표시 색상은 회색으로 설정됩니다.
- 강조 표시 크기는 0픽셀로 설정됩니다.
- 알파는 단색을 만드는 1로 설정됩니다.
- 픽셀 힌팅은 false로 설정됩니다(획이 전체 픽셀로 힌팅되지 않음).
- 선 크기 조절 모드는 정상으로 설정되어 두께를 조절합니다.
- 테두리 끝과 이음 제한은 선언되지만 설정되지는 않으므로 기본값이 사용됩니다.
- 클래스 생성자가 연결된 선분 2개로 이루어진 3개의 세트를 만듭니다. 선분은 3개의 연결 스타일(이음, 라운드, 경사)을 사용하여
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;
}
}
}
}