跳到主要内容

dragonBones.Armature

   dragonBones

   public class Armature

继承    dragonBones.Armature → dragonBones.BaseObject

  • 骨架是骨骼动画系统的核心。

公共属性

属性
animation : dragonBones.Animation
- 动画播放器
armatureData : dragonBones.ArmatureData
- 骨架数据
cacheFrameRate : number
- 动画缓存帧率,当设置的值大于 0 的时,将会开启动画缓存
clock : dragonBones.WorldClock|null
- 当前所属的 WordClock 实例
display : any
- 显示容器实例
eventDispatcher : dragonBones.IEventDispatcher
- 该骨架的 EventDispatcher 实例
flipX : boolean
- 是否将骨架水平翻转
flipY : boolean
- 是否将骨架垂直翻转
inheritAnimation : boolean
- 是否继承父骨架的动画控制
name : string
- 骨架名称
parent : dragonBones.Slot|null
- 该骨架所属的父插槽
proxy : dragonBones.IArmatureProxy

公共方法

方法
advanceTime(passedTime:number):void
- 更新时间
containsPoint(x:number,y:number):dragonBones.Slot|null
- 检查特定点是否在某个插槽的自定义边界框内
dispose():void
- 释放骨架
getBone(name:string):dragonBones.Bone|null
- 获取特定的骨骼
getBoneByDisplay(display:any):dragonBones.Bone|null
- 通过显示对象获取特定的骨骼
getBones():Array<dragonBones.Bone>
- 获取所有的骨骼
getDisplay():any
- 已废弃,请参考 {@link #display}
getSlot(name:string):dragonBones.Slot|null
- 获取特定的插槽
getSlotByDisplay(display:any):dragonBones.Slot|null
- 通过显示对象获取特定的插槽
getSlots():Array<dragonBones.Slot>
- 获取所有的插槽
intersectsSegment(xA:number,yA:number,xB:number,yB:number,intersectionPointA:{x:number;y:number;}|null,intersectionPointB:{x:number;y:number;}|null,normalRadians:{x:number;y:number;}|null):dragonBones.Slot|null
- 检查特定线段是否与骨架的某个插槽的自定义边界框相交
invalidUpdate(boneName:string|null,updateSlot:boolean):void
- 强制特定骨骼或其拥有的插槽在下一帧更新变换或显示属性
toString():string
[静态]

属性详细信息

animation

animation : dragonBones.Animation

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 动画播放器。

armatureData

armatureData : dragonBones.ArmatureData

  • 支持版本:DragonBones 4.5

  • 运行平台:Web,Native

  • 骨架数据。

cacheFrameRate

cacheFrameRate : number

  • 支持版本:DragonBones 4.5

  • 运行平台:Web,Native

  • 动画缓存帧率,当设置的值大于 0 的时,将会开启动画缓存。通过将动画数据缓存在内存中来提高运行性能,会有一定的内存开销。帧率不宜设置的过高,通常跟动画的帧率相当且低于程序运行的帧率。开启动画缓存后,某些功能将会失效,比如骨骼的 offset 属性等。

clock

clock : dragonBones.WorldClock|null

  • 支持版本:all

  • 运行平台:Web,Native

  • 当前所属的 WordClock 实例。

display

display : any

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 显示容器实例。插槽的显示对象都会以此显示容器为父级。根据渲染引擎的不同,类型会不同,通常是 DisplayObjectContainer 类型。

eventDispatcher

eventDispatcher : dragonBones.IEventDispatcher

  • 支持版本:DragonBones 4.5

  • 运行平台:Web,Native

  • 该骨架的 EventDispatcher 实例。

flipX

flipX : boolean

  • 支持版本:DragonBones 5.5

  • 运行平台:Web,Native

  • 是否将骨架水平翻转。

flipY

flipY : boolean

  • 支持版本:DragonBones 5.5

  • 运行平台:Web,Native

  • 是否将骨架垂直翻转。

inheritAnimation

inheritAnimation : boolean = true

  • 支持版本:DragonBones 4.5

  • 运行平台:Web,Native

  • 是否继承父骨架的动画控制。如果该值为 true,当父骨架播放动画时,会尝试让子骨架播放同名动画。

name

name : string

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 骨架名称。

parent

parent : dragonBones.Slot|null

  • 支持版本:DragonBones 4.5

  • 运行平台:Web,Native

  • 该骨架所属的父插槽。

proxy

proxy : dragonBones.IArmatureProxy

  • 支持版本:all
  • 运行平台:Web,Native

方法详细信息

advanceTime()

public advanceTime(passedTime:number):void

  • 更新时间。

  • 支持版本:all

  • 运行平台:Web,Native

  • 参数

    • passedTime:number - - 前进的时间。 (以秒为单位)

containsPoint()

public containsPoint(x:number,y:number):dragonBones.Slot|null

  • 检查特定点是否在某个插槽的自定义边界框内。点的坐标系为骨架内坐标系。自定义边界框需要在 DragonBones Pro 中自定义。

  • 支持版本:DragonBones 5.0

  • 运行平台:Web,Native

  • 参数

    • x:number - - 点的水平坐标。
    • y:number - - 点的垂直坐标。

dispose()

public dispose():void

  • 释放骨架。 (回收到对象池)

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

    //Example:
removeChild(armature.display);
armature.dispose();

getBone()

public getBone(name:string):dragonBones.Bone|null

  • 获取特定的骨骼。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 参数

    • name:string - - 骨骼名称。

getBoneByDisplay()

public getBoneByDisplay(display:any):dragonBones.Bone|null

  • 通过显示对象获取特定的骨骼。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 参数

    • display:any - - 显示对象。

getBones()

public getBones():Array<dragonBones.Bone>

  • 获取所有的骨骼。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

getDisplay()

public getDisplay():any

  • 已废弃,请参考 {@link #display}。

  • 支持版本:all

  • 运行平台:Web,Native

getSlot()

public getSlot(name:string):dragonBones.Slot|null

  • 获取特定的插槽。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 参数

    • name:string - - 插槽名称。

getSlotByDisplay()

public getSlotByDisplay(display:any):dragonBones.Slot|null

  • 通过显示对象获取特定的插槽。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 参数

    • display:any - - 显示对象。

getSlots()

public getSlots():Array<dragonBones.Slot>

  • 获取所有的插槽。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

intersectsSegment()

public intersectsSegment(xA:number,yA:number,xB:number,yB:number,intersectionPointA:{x:number;y:number;}|null,intersectionPointB:{x:number;y:number;}|null,normalRadians:{x:number;y:number;}|null):dragonBones.Slot|null

  • 检查特定线段是否与骨架的某个插槽的自定义边界框相交。线段和交点的坐标系均为骨架内坐标系。自定义边界框需要在 DragonBones Pro 中自定义。

  • 支持版本:DragonBones 5.0

  • 运行平台:Web,Native

  • 参数

    • xA:number - - 线段起点的水平坐标。
    • yA:number - - 线段起点的垂直坐标。
    • xB:number - - 线段终点的水平坐标。
    • yB:number - - 线段终点的垂直坐标。
    • intersectionPointA:{x:number;y:number;}|null - - 线段从起点到终点与边界框相交的第一个交点。 (如果未设置,则不计算交点)
    • intersectionPointB:{x:number;y:number;}|null - - 线段从终点到起点与边界框相交的第一个交点。 (如果未设置,则不计算交点)
    • normalRadians:{x:number;y:number;}|null - - 交点边界框切线的法线弧度。 [x: 第一个交点切线的法线弧度, y: 第二个交点切线的法线弧度] (如果未设置,则不计算法线)
  • 返回:线段从起点到终点相交的第一个自定义边界框的插槽。

invalidUpdate()

public invalidUpdate(boneName:string|null,updateSlot:boolean):void

  • 强制特定骨骼或其拥有的插槽在下一帧更新变换或显示属性。

  • 支持版本:DragonBones 3.0

  • 运行平台:Web,Native

  • 参数

    • boneName:string|null - - 骨骼名称。 (如果未设置,将更新所有骨骼)
    • updateSlot:boolean - - 是否更新骨骼的插槽。 (默认: false)

toString()

public toString():string

  • 支持版本:all
  • 运行平台:Web,Native