ActionScript® 3.0 Referenzhandbuch für die Adobe® Flash®-Plattform
Home  |  Liste der Pakete und Klassen ausblenden |  Pakete  |  Klassen  |  Neue Funktionen  |  Stichwortverzeichnis  |  Anhänge  |  Warum auf Englisch?
Filter: Daten werden vom Server abgerufen...
Daten werden vom Server abgerufen...
fl.ik 

IKManager  - AS3 Flash

Paketfl.ik
Klassepublic class IKManager
VererbungIKManager Inheritance EventDispatcher Inheritance Object

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Die IKManager-Klasse ist eine Containerklasse, die alle IK-Strukturen (Skelette) repräsentiert, die in einem Dokument definiert sind (IK = Inverse Kinematik). Sie ermöglicht zur Laufzeit die Verwaltung dieser Skelette.

Skelette können nur im Flash-Authoring-Tool erstellt werden. Wenn Sie ein Flash CS4-Dokument mit Skeletten veröffentlichen, speichert das Flash-Authoring-Tool eine XML-Darstellung der Skelette sowie generierten ActionScript-Code in der SWF-Datei. Zur Laufzeit führt Flash Player den ActionScript-Code aus und analysiert den XML-Code, um die Skelette neu zu erstellen.

Sie brauchen keine Instanz der IKManager-Klasse zu erstellen; die Laufzeitumgebung erstellt automatisch eine Instanz dieser Klasse. Außerdem sind alle Eigenschaften und Methoden der IKManager-Klasse statisch; Sie brauchen nicht auf eine Instanz der IKManager-Klasse zu verweisen.

Hinweis: Wenn Sie auf IKArmature-Objekte innerhalb einer Dokumentklasse verweisen, achten Sie darauf, zuerst das frameConstructed-Ereignis zu überprüfen, um sicherzustellen, dass alle Objekte ausgefüllt sind.



Öffentliche Eigenschaften
 EigenschaftDefiniert von
 Inheritedconstructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
Object
  numArmatures : int
[statisch] [schreibgeschützt] Die Anzahl der Skelette auf der Bühne.
IKManager
Öffentliche Methoden
 MethodeDefiniert von
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registriert ein Ereignis-Listener-Objekt bei einem EventDispatcher-Objekt, sodass der Listener über ein Ereignis benachrichtigt wird.
EventDispatcher
 Inherited
Sendet ein Ereignis in den Ereignisablauf.
EventDispatcher
  
[statisch] Gibt das Skelett an der angegebenen Indexposition zurück.
IKManager
  
[statisch] Gibt das Skelett mit dem angegebenen Namen zurück.
IKManager
 Inherited
Überprüft, ob das EventDispatcher-Objekt Listener für einen bestimmten Ereignistyp registriert hat.
EventDispatcher
 Inherited
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
Object
 Inherited
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
Object
 Inherited
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Entfernt einen Listener aus dem EventDispatcher-Objekt.
EventDispatcher
 Inherited
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
Object
  
[statisch] Verwenden Sie diese Methode, um den Container von Symbolen in einer geladenen SWF-Datei anzugeben.
IKManager
 Inherited
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas.
Object
 Inherited
Gibt das angegebene Objekt als String zurück.
Object
  
[statisch] Aktiviert oder deaktiviert die Live-Verfolgung für alle Skelette.
IKManager
  
trackIKArmature(theTree:IKArmature, enable:Boolean = true):void
[statisch] Aktiviert oder deaktiviert die Live-Verfolgung der angegebenen IKArmature-Instanz.
IKManager
  
trackIKObject(target:DisplayObject, enable:Boolean = true):*
[statisch] Aktiviert oder deaktiviert die Live-Verfolgung der angegebenen IK-Anzeigeobjektinstanz.
IKManager
 Inherited
Gibt den Grundwert des angegebenen Objekts zurück.
Object
 Inherited
Überprüft, ob bei diesem EventDispatcher-Objekt oder bei einem seiner Vorgänger ein Ereignis-Listener für einen bestimmten Ereignistyp registriert ist.
EventDispatcher
Ereignisse
 Ereignis Übersicht Definiert von
 Inherited[broadcast event] Wird ausgelöst, wenn Flash Player oder eine AIR-Anwendung den Betriebssystemfokus erhält und aktiv wird.EventDispatcher
 Inherited[broadcast event] Wird ausgelöst, wenn Flash Player- oder die AIR-Anwendung den Fokus verliert und inaktiv wird.EventDispatcher
Eigenschaftendetails

numArmatures

Eigenschaft
numArmatures:int  [schreibgeschützt]

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Die Anzahl der Skelette auf der Bühne. Wenn die SWF-Datei nachfolgend andere SWF-Dateien lädt, sind die Skelette in den geladenen SWF-Dateien nicht eingeschlossen.



Implementierung
    public static function get numArmatures():int
Methodendetails

getArmatureAt

()Methode
public static function getArmatureAt(index:int):IKArmature

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Gibt das Skelett an der angegebenen Indexposition zurück.

Parameter

index:int — Die auf null basierende Indexnummer des abzurufenden Skeletts.

Rückgabewerte
IKArmature — Gibt die IKArmature-Instanz an der angegebenen Indexposition zurück.

Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das erste Skelett in der Baumstruktur abgerufen. Um auf Skelette innerhalb einer Dokumentklasse zu verweisen, verwenden Sie das frameConstructed-Ereignis anstatt des addedToStage-Ereignisses. Auf diese Weise stellen Sie sicher, dass alle IKArmatures ausgefüllt sind.
         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

()Methode 
public static function getArmatureByName(name:String):IKArmature

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Gibt das Skelett mit dem angegebenen Namen zurück.

Parameter

name:String — Der Name des abzurufenden Skeletts.

Rückgabewerte
IKArmature — Gibt die IKArmature-Instanz mit dem angegebenen Namen zurück.

Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das erste Skelett in der Baumstruktur abgerufen:
         import fl.ik.*;
         // Retrieve the IKArmature named "arm0" and assign to variable "tree"
         var tree:IKArmature = IKManager.getArmatureByName("arm0");
         

setStage

()Methode 
public static function setStage(stage:DisplayObjectContainer):void

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Verwenden Sie diese Methode, um den Container von Symbolen in einer geladenen SWF-Datei anzugeben. Wenn Sie eine SWF-Datei laden, die ein Skelett enthält, müssen Sie der übergeordneten SWF-Datei die Position der Symbole für das Skelett angeben. Wenn die untergeordnete SWF-Datei die Skelettsymbole auf der Bühne hat, ist der Wert stage oder eine Variable für die Bühne.

Parameter

stage:DisplayObjectContainer — Die Position der Skelettsymbole in einer geladenen SWF-Datei.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel lädt eine SWF-Datei eine andere SWF-Datei, die ein Skelett enthält. Die untergeordnete SWF-Datei (die die Skelettsymbole enthält), wird aus der Datei „myAnimation.fla“ generiert. Die übergeordnete SWF-Datei (die die Datei „myAnimation.swf“ lädt) wird aus der Datei „Main.fla“ generiert. Die Datei „myAnimation.fla“ enthält einen Satz von Skelettsymbolen, die auf der Bühne platziert sind. Eine ActionScript-Zeile setzt die Variable myAnimationStage auf „stage“, was in diesem Fall der Container der Skelettsymbole ist. Der ActionScript-Code in der Datei „Main.fla“ verwendet setStage(), um der übergeordneten SWF-Datei den Namen des Symbolcontainers in der untergeordneten SWF-Datei mitzuteilen.

ActionScript-Code für die Datei „myAnimation.fla“ (um die untergeordnete SWF-Datei zu generieren):

         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;
         

ActionScript-Code für die Datei „Main.fla“ (um die übergeordnete SWF-Datei zu generieren):

         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

()Methode 
public static function trackAllArmatures(enable:Boolean = true):void

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Aktiviert oder deaktiviert die Live-Verfolgung für alle Skelette. Wenn die Live-Verfolgung aktiviert ist, kann der Benutzer einer SWF-Datei, die Skelette enthält, ein Skelett durch Klicken und Ziehen bewegen.

Parameter

enable:Boolean (default = true) — Bei der Einstellung false ist die Live-Verfolgung deaktiviert. Andernfalls ist die Live-Verfolgung aktiviert.

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird verhindert, dass der Benutzer einer SWF-Datei die Bewegung eines Skeletts steuern kann:
             import fl.ik.*;
             // disable live tracking for all armatures in the SWF file
             IKManager.trackAllArmatures(false);
             

trackIKArmature

()Methode 
public static function trackIKArmature(theTree:IKArmature, enable:Boolean = true):void

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Aktiviert oder deaktiviert die Live-Verfolgung der angegebenen IKArmature-Instanz. Wenn die Live-Verfolgung aktiviert ist, kann der Benutzer einer SWF-Datei, die Skelette enthält, ein Skelett durch Klicken und Ziehen bewegen.

Parameter

theTree:IKArmature — Das Skelett, für das die Live-Verfolgung aktiviert oder deaktiviert werden soll.
 
enable:Boolean (default = true) — Bei der Einstellung false ist die Live-Verfolgung deaktiviert. Andernfalls ist die Live-Verfolgung aktiviert.

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird dem Benutzer einer SWF-Datei die Steuerung einer menschlichen Figur ermöglicht, indem er auf einen beliebigen Teil der Figur mit Ausnahme des Rumpfs klickt und diesen zieht. Die Figur wird durch eine IKArmature-Instanz mit dem Namen „personTree“ repräsentiert, die ein IKObject-Objekt mit dem Name „torso“ enthält, das den Rumpf der Figur darstellt:
             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

()Methode 
public static function trackIKObject(target:DisplayObject, enable:Boolean = true):*

Sprachversion: ActionScript 3.0
Produktversion: Flash CS4
Laufzeitversionen: Flash Player 10, AIR 1.5

Aktiviert oder deaktiviert die Live-Verfolgung der angegebenen IK-Anzeigeobjektinstanz. Wenn die Live-Verfolgung für eine bestimmte IK-Anzeigeobjektinstanz aktiviert ist, kann der Benutzer das Skelett mit der IK-Anzeigeobjektinstanz bewegen, indem er auf dieses IK-Anzeigeobjekt klickt und es zieht.

Parameter

target:DisplayObject — Die Instanz des IK-Anzeigeobjekts, für die die Live-Verfolgung aktiviert oder deaktiviert werden soll.
 
enable:Boolean (default = true) — Bei der Einstellung false ist die Live-Verfolgung deaktiviert. Andernfalls ist die Live-Verfolgung aktiviert.

Rückgabewerte
*

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird dem Benutzer einer SWF-Datei die Steuerung der Bewegung einer menschlichen Figur ermöglicht, indem er nur auf die Hände dieser Figur klickt und sie zieht. Die Hände werden durch die IK-Anzeigeobjektinstanzen rightHand und leftHand repräsentiert, die beide MovieClip-Instanzen sind:
             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);
             




[ X ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

Nicht alle Teile des ActionScript 3.0-Referenzhandbuchs wurden in alle Sprachen übersetzt. Wenn der Text zu einem Sprachelement nicht übersetzt wurde, wird er auf Englisch angezeigt. Zum Beispiel wurden die Informationen zur ga.controls.HelpBox-Klasse nicht in andere Sprachen übersetzt. In der deutschen Version des Referenzhandbuchs erscheint der Abschnitt zur ga.controls.HelpBox-Klasse deshalb auf Englisch.