包 | fl.ik |
类 | public class IKArmature |
继承 | IKArmature Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS4 |
运行时版本: | Flash Player 10, AIR 1.5 |
springsEnabled
属性利用动态物理引擎的弹簧功能和阻尼功能。
因为骨架只能在 Flash 创作工具中创建,所以不应该使用 IKArmature 类的构造函数来创建该类的实例。在 SWF 文件开始运行后,Flash Player 将创建 IKArmature 类的所有实例。通过使用 IKManager 类中的 getArmatureAt()
或 getArmatureByName()
方法,可以创建对骨架的引用。
注意:如果骨架未在场景的第一帧中,请使用 registerElements()
方法来初始化特定 DisplayObject 的骨架。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
container : DisplayObjectContainer [只读]
返回传递到对 registerElements 的调用中的 DisplayObjectContainer。 | IKArmature | ||
name : String [只读]
骨架的名称。 | IKArmature | ||
rootJoint : IKJoint [只读]
骨架中的根连接。 | IKArmature | ||
springsEnabled : Boolean
指定是否为骨架启用了弹簧功能。 | IKArmature |
方法 | 由以下参数定义 | ||
---|---|---|---|
返回指定的骨骼。 | IKArmature | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
为包含骨架的库元件实例激活反向运动 (IK)。 | IKArmature | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object |
container | 属性 |
container:DisplayObjectContainer
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5 |
返回传递到对 registerElements 的调用中的 DisplayObjectContainer。
实现
public function get container():DisplayObjectContainer
name | 属性 |
name:String
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS4 |
运行时版本: | Flash Player 10, AIR 1.5 |
骨架的名称。只能在 Flash 创作工具中指定骨架的名称。
实现
public function get name():String
示例 ( 如何使用本示例 )
import fl.ik.*; // Retrieve the first armature and store in variable "arm0" var arm0:IKArmature = IKManager.getArmatureAt(0); // Trace the name of the first armature trace(arm0.name);
rootJoint | 属性 |
rootJoint:IKJoint
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS4 |
运行时版本: | Flash Player 10, AIR 1.5 |
骨架中的根连接。每个骨架只包含一个根连接,但可以有多个子连接。可以通过检索根连接并使用 IKJoint 类中的方法从一个连接移动到另一个连接来遍历骨架。
实现
public function get rootJoint():IKJoint
相关 API 元素
示例 ( 如何使用本示例 )
import fl.ik.*; // Retrieve the first armature and store in variable "arm0" var arm0:IKArmature = IKManager.getArmatureAt(0); // Retrieve the armature's root joint var rootJnt:IKJoint = arm0.rootJoint;
springsEnabled | 属性 |
springsEnabled:Boolean
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 1.5 |
指定是否为骨架启用了弹簧功能。当此值为 true 时,骨架可以利用新的动态物理引擎,该引擎向骨架添加了弹簧和阻尼。默认值为 true。
myArmature:IKArmature = fl.ik.IKManager.getArmatureAt(0); myArmature.springsEnabled = true; // turns springs on
实现
public function get springsEnabled():Boolean
public function set springsEnabled(value:Boolean):void
getBoneByName | () | 方法 |
public function getBoneByName(targetName:String):IKBone
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS4 |
运行时版本: | Flash Player 10, AIR 1.5 |
返回指定的骨骼。可以在 Flash 创作工具中为每个骨骼分配一个名称。使用此方法可创建对骨骼的引用,以便您可以在运行时操作骨骼。
参数
targetName:String |
IKBone — 由 targetName 参数指定的 IKBone 实例。
|
相关 API 元素
示例 ( 如何使用本示例 )
import fl.ik.*; // Retrieve bone named "firstBone" and store in variable "bone" var bone:IKBone = IKArmature.getBoneByName("firstBone");
registerElements | () | 方法 |
public function registerElements(container:DisplayObjectContainer):*
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS4 |
运行时版本: | Flash Player 10, AIR 1.5 |
为包含骨架的库元件实例激活反向运动 (IK)。包含骨架并在运行时进行实例化的库 MovieClip 必须调用此方法才能激活运行时反向运动效果。
注意:如果骨架不在第一个场景的第一帧中,则必须调用此方法。
参数
container:DisplayObjectContainer — 对舞台的引用,可通过当前位于显示列表中的任何 DisplayObject 的 stage 属性进行访问。
|
* |
示例 ( 如何使用本示例 )
import fl.ik.*; // Add a Library Symbol named "IKPerson" // that contains an armature. // The symbol must be marked "Export for ActionScript" var myPerson:IKPerson = new IKPerson(); // add MovieClip to display list addChild(myPerson); // The IKPerson MovieClip contains an IK Armature with the name // "Armature_Person" and marked as Runtime Armature instead of Authortime Armature var myArmature:IKArmature = IKManager.getArmatureByName("Armature_Person"); // Allow armature to perform inverse kinematic // movement at run time myArmature.registerElements(stage); // Allow user to track armature and perform // IK movement with the mouse IKManager.trackIKArmature(myArmature, true);
下面的示例显示如何使用 registerElements()
方法来初始化不在场景的第一帧中的骨架。若要初始化某个骨架,请将以下代码附加到包含该骨架的第一帧:
import fl.ik.*; var arm:IKArmature = IKManager.getArmatureAt(0); arm.registerElements(stage);
Tue Jun 12 2018, 11:04 AM Z