Pakiet | fl.ik |
Klasa | public class IKManager |
Dziedziczenie | IKManager EventDispatcher Object |
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Szkielety można tworzyć wyłącznie w narzędziu Flash do tworzenia treści. Podczas publikowania dokumentu programu Flash CS4 zawierającego szkielety narzędzie Flash do tworzenia treści zapisuje reprezentację szkieletów w formacie XML oraz wygenerowany kod ActionScript w pliku SWF. W środowisku wykonawczym program Flash Player wykonuje kod ActionScript i analizuje składnię kodu XML w celu odtworzenia szkieletów.
Program użytkownika nie musi tworzyć instancji klasy IKManager; środowisko wykonawcze tworzy instancję tej klasy automatycznie. Ponadto wszystkie właściwości i metody klasy IKManager są statyczne; nie ma potrzeby odwoływania się do instancji klasy IKManager.
Uwaga: Jeśli w klasie dokumentu tworzone są odwołania do obiektów IKArmature, należy najpierw sprawdzić zdarzenie frameConstructed
, aby upewnić się, że wszystkie obiekty zostały zapełnione.
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
numArmatures : int [statyczny] [tylko do odczytu]
Liczba szkieletów na stole montażowym. | IKManager |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Rejestruje obiekt detektora zdarzeń w obiekcie EventDispatcher, dzięki czemu detektor będzie otrzymywał powiadomienia o zdarzeniu. | EventDispatcher | ||
Wywołuje zdarzenie, tj. kieruje je do przepływu zdarzeń. | EventDispatcher | ||
[statyczny]
Zwraca szkielet o określonym indeksie. | IKManager | ||
[statyczny]
Zwraca szkielet o określonej nazwie. | IKManager | ||
Sprawdza, czy obiekt EventDispatcher zawiera jakiekolwiek detektory zarejestrowane dla konkretnego typu zdarzeń. | EventDispatcher | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Usuwa detektor z obiektu EventDispatcher. | EventDispatcher | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
[statyczny]
Ta metoda umożliwia wskazanie kontenera symboli w ładowanym pliku SWF. | IKManager | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
[statyczny]
Włącza lub wyłącza bieżące śledzenie dla wszystkich szkieletów. | IKManager | ||
[statyczny]
Włącza lub wyłącza bieżące śledzenie określonej instancji klasy IKArmature. | IKManager | ||
[statyczny]
Włącza lub wyłącza bieżące śledzenie określonej instancji obiektu wyświetlanego KO. | IKManager | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object | ||
Sprawdza, czy detektor zdarzeń określonego typu jest zarejestrowany w tym obiekcie EventDispatcher lub jego elementach macierzystych. | EventDispatcher |
numArmatures | właściwość |
numArmatures:int
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Liczba szkieletów na stole montażowym. Jeśli plik SWF załaduje później inne pliki SWF, zawarte w nich szkielety nie zostaną uwzględnione.
Implementacja
public static function get numArmatures():int
getArmatureAt | () | metoda |
public static function getArmatureAt(index:int):IKArmature
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Zwraca szkielet o określonym indeksie.
Parametry
index:int — Liczony od zera numer szkieletu, który ma być zwrócony.
|
IKArmature — Zwraca instancję klasy IKArmature spod określonej wartości index.
|
Przykład ( Sposób korzystania z tego przykładu )
frameConstructed
zamiast zdarzenia addedToStage
. To zapewnia zapełnienie wszystkich szkieletów IKArmatures.
package { import fl.ik; import flash.display.MovieClip; import flash.events; public class IKDocClass extends MovieClip { public var arm:IKArmature; function IKDocClass() { addEventListener("frameConstructed", onFC); } function onFC(evt:Event):void { //Refer to armatures in frameConstructed arm = IKManager.getArmatureAt(0); trace(arm.name); removeEventListener("frameConstructed", onFC); } } }
getArmatureByName | () | metoda |
public static function getArmatureByName(name:String):IKArmature
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Zwraca szkielet o określonej nazwie.
Parametry
name:String — Nazwa szkieletu, który ma być pobrany.
|
IKArmature — Zwraca instancję klasy IKArmature o określonej nazwie.
|
Przykład ( Sposób korzystania z tego przykładu )
import fl.ik.*; // Retrieve the IKArmature named "arm0" and assign to variable "tree" var tree:IKArmature = IKManager.getArmatureByName("arm0");
setStage | () | metoda |
public static function setStage(stage:DisplayObjectContainer):void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Ta metoda umożliwia wskazanie kontenera symboli w ładowanym pliku SWF. Ładując plik SWF zawierający szkielet, należy wskazać położenie symboli szkieletu w nadrzędnym pliku SWF. Jeśli symbole szkieletu znajdują się na stole montażowym podrzędnego pliku SWF, wartością jest stage
lub zmienna będąca stołem montażowym.
Parametry
stage:DisplayObjectContainer — Położenie symboli szkieletu w ładowanym pliku SWF.
|
Przykład ( Sposób korzystania z tego przykładu )
setStage()
do przekazania do nadrzędnego pliku SWF nazwy kontenera symboli w podrzędnym pliku SWF.
Kod ActionScript w pliku myAnimation.fla (służący do wygenerowania podrzędnego pliku SWF):
import fl.ik.*; var myAnimationIKM = IKManager; var myAnimationArm:IKArmature = IKManager.getArmatureAt(0); // set a variable for the stage containing the armature symbols var myAnimationStage:DisplayObjectContainer = stage;
Kod ActionScript w pliku Main.fla (służący do wygenerowania nadrzędnego pliku SWF):
var myLoader:Loader = new Loader(); myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteFunc); function onCompleteFunc(event:Event) { // indicate container of the armature symbols myLoader.content.myAnimationIKM.setStage(loader.content.myAnimationStage); myLoader.content.myAnimationArm.registerElements(loader.content.myAnimationStage); myLoader.content.myAnimationIKM.trackAllArmatures(); } myLoader.load(new URLRequest("myAnimation.swf")); addChild(myLoader);
trackAllArmatures | () | metoda |
public static function trackAllArmatures(enable:Boolean = true):void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Włącza lub wyłącza bieżące śledzenie dla wszystkich szkieletów. Gdy bieżące śledzenie jest włączone, użytkownik pliku SWF zawierającego szkielety może przemieszczać szkielet, klikając go i przeciągając.
Parametry
enable:Boolean (default = true ) — Wartośc false powoduje wyłączenie bieżącego śledzenia. Ustawienie wartości true powoduje włączenie bieżącego śledzenia.
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
import fl.ik.*; // disable live tracking for all armatures in the SWF file IKManager.trackAllArmatures(false);
trackIKArmature | () | metoda |
public static function trackIKArmature(theTree:IKArmature, enable:Boolean = true):void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Włącza lub wyłącza bieżące śledzenie określonej instancji klasy IKArmature. Gdy jest włączone aktywne śledzenie, użytkownik pliku SWF zawierającego szkielety może przemieszczać szkielet, klikając go i przeciągając.
Parametry
theTree:IKArmature — Szkielet, dla którego można włączać i wyłączać bieżące śledzenie.
| |
enable:Boolean (default = true ) — Wartośc false powoduje wyłączenie bieżącego śledzenia. Ustawienie wartości true powoduje włączenie bieżącego śledzenia.
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
import fl.ik.*; // turn off tracking for all armatures in the SWF file IKManager.trackAllArmatures(false); // enable live tracking for the entire armature IKManager.trackIKArmature(personTree, true); // disable live tracking for the figure's torso IKManager.trackIKObject(torso, false);
trackIKObject | () | metoda |
public static function trackIKObject(target:DisplayObject, enable:Boolean = true):*
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS4 |
Wersje środowiska wykonawczego: | Flash Player 10, AIR 1.5 |
Włącza lub wyłącza bieżące śledzenie określonej instancji obiektu wyświetlanego KO. Gdy bieżące śledzenie jest włączone dla określonej instancji obiektu wyświetlanego KO, użytkownik może przemieszczać szkielet zawierający tę instancję, klikając i przeciągając obiekt wyświetlany KO.
Parametry
target:DisplayObject — Instancja obiektu wyświetlanego KO, dla której należy włączyć lub wyłączyć bieżące śledzenie.
| |
enable:Boolean (default = true ) — Wartośc false powoduje wyłączenie bieżącego śledzenia. Ustawienie wartości true powoduje włączenie bieżącego śledzenia.
|
* |
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
rightHand
i leftHand
; obie są instancjami klasy MovieClip:
import fl.ik.*; // turn off tracking for all armatures in the SWF file IKManager.trackAllArmatures(false); // enable live tracking for the right hand IKManager.trackIKObject(rightHand, true); // enable live tracking for the left hand IKManager.trackIKObject(leftHand, true);
Tue Jun 12 2018, 12:06 PM Z