Pakiet | flash.display |
Klasa | public final class JointStyle |
Dziedziczenie | JointStyle Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
joints
metody flash.display.Graphics.lineStyle()
. Metoda obsługuje trzy typy złączeń: ostre, zaokrąglone i ścięte, co widać na poniższym przykładzie:
Powiązane elementy interfejsu API
Właściwości publiczne
Metody publiczne
Stałe publiczne
Stała | Zdefiniowane przez | ||
---|---|---|---|
BEVEL : String = "bevel" [statyczny]
Określa wartość parametru metody flash.display.Graphics.lineStyle(), która zapewnia rysowanie ostrych złączeń linii. | JointStyle | ||
MITER : String = "miter" [statyczny]
Określa wartość parametru metody flash.display.Graphics.lineStyle(), która zapewnia rysowanie ukośnych złączeń linii. | JointStyle | ||
ROUND : String = "round" [statyczny]
Określa wartość parametru metody flash.display.Graphics.lineStyle(), która zapewnia rysowanie zaokrąglonych złączeń linii. | JointStyle |
Szczegół stałej
BEVEL | Stała |
public static const BEVEL:String = "bevel"
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Określa ścięte złączenia w parametrze joints
metody flash.display.Graphics.lineStyle()
.
MITER | Stała |
public static const MITER:String = "miter"
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Określa ostre złączenia w parametrze joints
metody flash.display.Graphics.lineStyle()
.
ROUND | Stała |
public static const ROUND:String = "round"
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Określa zaokrąglone złączenia w parametrze joints
metody flash.display.Graphics.lineStyle()
.
Przykłady Sposób korzystania z tego przykładu
JointStyleExample.as
Poniższy przykład ilustruje wykorzystanie klasy JointStyleExample w celu ukazania wyników zastosowania trzech różnych typów złączeń na trzech zestawach połączonych linii. Zadanie to jest realizowane przez wykonanie następujących kroków:
- Właściwości każdej z linii ustawione w następujący sposób:
- Długość linii jest ustawiona na 80 pikseli.
- Barwa obramowania jest ustawiona na kolor pomarańczowy.
- Rozmiar obramowania wynosi 30 pikseli.
- Kolor podświetlenia to szary.
- Rozmiar podświetlenia jest ustawiony na zero pikseli.
- Wartość alpha jest ustawiona na 1 - jednolita.
- Wskazywanie pikseli jest ustawione na wartość false (obrysy nie są wskazywane do całych pikseli).
- Skala linii jest ustawiona na normalną (skaluje grubość).
- Zakończenia obrysów i próg ścięcia są deklarowane ale nie ustawiane, zatem wykorzystywane są wartości domyślne.
- Konstruktor klas tworzy trzy zestawy segmentów dwóch połączonych linii. Rysowanie segmentów rozpoczyna się na współrzędnych x = 0, y = 0 poprzez trzykrotne wywołanie metody
doDrawCorner()
z wykorzystaniem trzech stylów złączeń (ostre, zaokrąglone i ścięte). Każde z tych wywołań metodydoDrawCorner()
wykorzystuje styl złączenia i właściwości wymienione wcześniej w celu narysowania segmentów dwóch połączonych linii i skojarzonymi podświetleniami linii. W tym celu konieczne jest najpierw utworzenie nowego obiektu Shapechild
, a następnie zastosowanie metod klasy Graphics w celu ustawienia stylu styl linii oraz ich narysowania z podświetleniami. Każda instancja obiektuchild
jest dodawana do listy wyświetlania i niezwłocznie rysowana na stole montażowym. - Połączone segmenty linii są następnie rysowane przez zastosowanie metody
refreshLayout()
przy wartości y = 80 pikseli i x = 80 pikseli, z 25-pikselową przerwą między segmentami linii.
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, 12:06 PM Z