Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Node

场景树中的基本节点,基本特性有:

  • 具有层级关系
  • 持有各类组件
  • 维护空间变换(坐标、旋转、缩放)信息

Hierarchy

Implements

Index

Constructors

Properties

Accessors

Methods

Constructors

constructor

  • newNode(name?: undefined | string): Node

Properties

Protected __eventTargets

__eventTargets: any[] = []

Register all related EventTargets, all event callbacks will be removed in onPreDestroy protected _eventTargets: EventTarget[] = [];

Protected _active

_active: boolean = true

Protected _activeInHierarchy

_activeInHierarchy: boolean = false

Protected _children

_children: this[] = []

Protected _components

_components: Component[] = []
default

[]

readonly

Protected _dirtyFlags

_dirtyFlags: TransformBit = TransformBit.NONE

Protected _euler

_euler: Vec3 = new Vec3()

Protected _eulerDirty

_eulerDirty: boolean = false

Protected _eventMask

_eventMask: number = 0

Protected _eventProcessor

_eventProcessor: NodeEventProcessor = new NodeEventProcessor(this)

Protected _id

_id: string = idGenerator.getNewId()

Protected _layer

_layer: number = Layers.Enum.DEFAULT

Protected _lpos

_lpos: Vec3 = new Vec3()

Protected _lrot

_lrot: Quat = new Quat()

Protected _lscale

_lscale: Vec3 = new Vec3(1, 1, 1)

Protected _mat

_mat: Mat4 = new Mat4()

Protected _name

_name: string

_objFlags

_objFlags: number

Protected _parent

_parent: this | null = null

Protected _pos

_pos: Vec3 = new Vec3()

Protected _prefab

_prefab: any = null

The PrefabInfo object

type

{PrefabInfo}

Protected _registerIfAttached

_registerIfAttached: undefined | (Anonymous function) = !CC_EDITOR ? undefined : function (this: BaseNode, register) {if (EditorExtends.Node && EditorExtends.Component) {if (register) {EditorExtends.Node.add(this._id, this);for (let i = 0; i < this._components.length; i++) {const comp = this._components[i];EditorExtends.Component.add(comp._id, comp);}}else {EditorExtends.Node.remove(this._id);for (let i = 0; i < this._components.length; i++) {const comp = this._components[i];EditorExtends.Component.remove(comp._id);}}}const children = this._children;for (let i = 0, len = children.length; i < len; ++i) {const child = children[i];child._registerIfAttached!(register);}}

Protected _rot

_rot: Quat = new Quat()

Protected _scale

_scale: Vec3 = new Vec3(1, 1, 1)

Protected _scene

_scene: any = NullScene

此节点属于哪个场景。

type

{cc.Scene}}

Protected _siblingIndex

_siblingIndex: number = 0

_static

_static: boolean = false

_uiProps

_uiProps: NodeUIProperties = new NodeUIProperties(this)

Static EventType

EventType: SystemEventType = SystemEventType

节点可能发出的事件类型

Static NodeSpace

NodeSpace: NodeSpace = NodeSpace

空间变换操作的坐标系

Static TransformBit

TransformBit: TransformBit = TransformBit

节点变换更新的具体部分,可用于判断 TRANSFORM_CHANGED 事件的具体类型

Static TransformDirtyBit

TransformDirtyBit: TransformBit = TransformBit

节点变换更新的具体部分

deprecated

请使用 [Node.TransformBit]

Static Protected _stackId

_stackId: number = 0

Static Protected _stacks

_stacks: Array<Array<null | BaseNode>> = [[]]

Static bookOfChange

bookOfChange: Map<string, number> = bookOfChange

Static Protected idGenerator

idGenerator: IDGenerator = idGenerator

Accessors

Protected persistNode

  • get persistNode(): boolean
  • set persistNode(value: boolean): void
  • 如果为true,则该节点是一个常驻节点,不会在场景转换期间被销毁。
    如果为false,节点将在加载新场景时自动销毁。默认为false。

    property

    _persistNode

    type

    {Boolean}

    default

    false

    Returns boolean

  • Parameters

    • value: boolean

    Returns void

active

  • get active(): boolean
  • set active(isActive: boolean): void
  • 当前节点的自身激活状态。
    值得注意的是,一个节点的父节点如果不被激活,那么即使它自身设为激活,它仍然无法激活。
    如果你想检查节点在场景中实际的激活状态可以使用 activeInHierarchy

    property

    active

    type

    {Boolean}

    default

    true

    example
    node.active = false;

    Returns boolean

  • Parameters

    • isActive: boolean

    Returns void

activeInHierarchy

  • get activeInHierarchy(): boolean
  • 表示此节点是否在场景中激活。

    property

    activeInHierarchy

    type

    {Boolean}

    example
    cc.log("activeInHierarchy: " + node.activeInHierarchy);

    Returns boolean

anchorX

  • get anchorX(): number
  • set anchorX(value: number): void
  • Returns number

  • Parameters

    • value: number

    Returns void

anchorY

  • get anchorY(): number
  • set anchorY(value: number): void
  • Returns number

  • Parameters

    • value: number

    Returns void

children

  • get children(): this[]
  • 节点的所有子节点。

    property

    children

    type

    {Node[]}

    readonly
    example
    var children = node.children;
    for (var i = 0; i < children.length; ++i) {
        cc.log("Node: " + children[i]);
    }

    Returns this[]

components

  • 获取附加到此节点的所有组件。

    Returns ReadonlyArray<Component>

eulerAngles

  • get eulerAngles(): object
  • set eulerAngles(val: Readonly<Vec3>): void
  • Returns object

  • 以欧拉角表示的本地旋转值

    Parameters

    • val: Readonly<Vec3>

    Returns void

eventProcessor

forward

  • get forward(): Vec3
  • set forward(dir: Vec3): void
  • 当前节点面向的前方方向,默认前方为 -z 方向

    Returns Vec3

  • Parameters

    Returns void

hasChangedFlags

  • get hasChangedFlags(): number
  • set hasChangedFlags(val: number): void
  • 这个节点的空间变换信息在当前帧内是否有变过?

    Returns number

  • Parameters

    • val: number

    Returns void

height

  • get height(): number
  • set height(value: number): void
  • Returns number

  • Parameters

    • value: number

    Returns void

isValid

  • get isValid(): boolean
  • 表示该对象是否可用(被 destroy 后将不可用)。
    当一个对象的 destroy 调用以后,会在这一帧结束后才真正销毁。
    因此从下一帧开始 isValid 就会返回 false,而当前帧内 isValid 仍然会是 true。
    如果希望判断当前帧是否调用过 destroy,请使用 cc.isValid(obj, true),不过这往往是特殊的业务需求引起的,通常情况下不需要这样。

    property

    {Boolean} isValid

    default

    true

    readonly
    example
    import * as cc from 'cc';
    var node = new cc.Node();
    cc.log(node.isValid);    // true
    node.destroy();
    cc.log(node.isValid);    // true, still valid in this frame
    // after a frame...
    cc.log(node.isValid);    // false, destroyed in the end of last frame

    Returns boolean

layer

  • get layer(): number
  • set layer(l: number): void
  • Returns number

  • 节点所属层,主要影响射线检测、物理碰撞等,参考 Layers

    Parameters

    • l: number

    Returns void

matrix

  • set matrix(val: Readonly<Mat4>): void
  • 本地变换矩阵

    Parameters

    • val: Readonly<Mat4>

    Returns void

name

  • get name(): string
  • set name(value: string): void
  • 该节点名称。

    property

    name

    type

    {String}

    example
    node.name = "New Node";
    cc.log("Node Name: " + node.name);

    Returns string

  • Parameters

    • value: string

    Returns void

parent

  • get parent(): null | this
  • set parent(value: null | this): void
  • Returns null | this

  • Parameters

    • value: null | this

    Returns void

position

  • get position(): Readonly<Vec3>
  • set position(val: Readonly<Vec3>): void
  • 本地坐标

    Returns Readonly<Vec3>

  • Parameters

    • val: Readonly<Vec3>

    Returns void

rotation

  • get rotation(): Readonly<Quat>
  • set rotation(val: Readonly<Quat>): void
  • 本地旋转

    Returns Readonly<Quat>

  • Parameters

    • val: Readonly<Quat>

    Returns void

scale

  • get scale(): Readonly<Vec3>
  • set scale(val: Readonly<Vec3>): void
  • 本地缩放

    Returns Readonly<Vec3>

  • Parameters

    • val: Readonly<Vec3>

    Returns void

scene

  • get scene(): any
  • 此节点属于哪个场景。

    type

    {cc.Scene}}

    Returns any

uuid

  • get uuid(): string
  • 主要用于编辑器的 uuid,在编辑器下可用于持久化存储,在项目构建之后将变成自增的 id。

    property

    uuid

    type

    {String}

    readonly
    example
    cc.log("Node Uuid: " + node.uuid);

    Returns string

width

  • get width(): number
  • set width(value: number): void
  • Returns number

  • Parameters

    • value: number

    Returns void

worldMatrix

  • get worldMatrix(): Readonly<Mat4>
  • 世界变换矩阵

    Returns Readonly<Mat4>

worldPosition

  • get worldPosition(): Readonly<Vec3>
  • set worldPosition(val: Readonly<Vec3>): void
  • 世界坐标

    Returns Readonly<Vec3>

  • Parameters

    • val: Readonly<Vec3>

    Returns void

worldRotation

  • get worldRotation(): Readonly<Quat>
  • set worldRotation(val: Readonly<Quat>): void
  • 世界旋转

    Returns Readonly<Quat>

  • Parameters

    • val: Readonly<Quat>

    Returns void

worldScale

  • get worldScale(): Readonly<Vec3>
  • set worldScale(val: Readonly<Vec3>): void
  • 世界缩放

    Returns Readonly<Vec3>

  • Parameters

    • val: Readonly<Vec3>

    Returns void

Methods

Protected Optional checkMultipleComp

  • checkMultipleComp(constructor: Function): boolean
  • Parameters

    • constructor: Function

    Returns boolean

destroyImmediate

  • _destroyImmediate(): void

destruct

  • _destruct(): void
  • Clear all references in the instance.

    NOTE: this method will not clear the getter or setter functions which defined in the instance of CCObject. You can override the _destruct method if you need, for example: _destruct: function () { for (var key in this) { if (this.hasOwnProperty(key)) { switch (typeof this[key]) { case 'string': this[key] = ''; break; case 'object': case 'function': this[key] = null; break; } } }

    Returns void

Protected disableChildComps

  • _disableChildComps(): void

Protected instantiate

  • instantiate(cloned: any): any
  • Parameters

    • cloned: any

    Returns any

onBatchCreated

  • _onBatchCreated(): void

onBatchRestored

  • _onBatchRestored(): void

onBeforeSerialize

  • _onBeforeSerialize(): void
  • Returns void

Protected onHierarchyChanged

  • onHierarchyChanged(oldParent: this | null): void
  • Parameters

    • oldParent: this | null

    Returns void

Protected onHierarchyChangedBase

  • onHierarchyChangedBase(oldParent: this | null): void

onPostActivated

  • onPostActivated(active: any): void
  • Parameters

    • active: any

    Returns void

onPreDestroy

  • _onPreDestroy(): void

Protected onPreDestroyBase

  • _onPreDestroyBase(): boolean

onSetParent

  • onSetParent(oldParent: this | null, keepWorldTransform: boolean): void
  • Parameters

    • oldParent: this | null
    • keepWorldTransform: boolean

    Returns void

Protected Optional onSiblingIndexChanged

  • onSiblingIndexChanged(siblingIndex: number): void

removeComponent

  • removeComponent(component: Component): void

updateSiblingIndex

  • _updateSiblingIndex(): void

addChild

  • addChild(child: this): void
  • Parameters

    • child: this

    Returns void

addComponent

  • addComponent<T>(classConstructor: Constructor<T>): T | null
  • addComponent(className: string): Component | null
  • 向节点添加一个指定类型的组件类,你还可以通过传入脚本的名称来添加组件。

    example
    var test = node.addComponent("Test");

    Type parameters

    Parameters

    Returns T | null

  • 向节点添加一个指定类型的组件类,你还可以通过传入脚本的名称来添加组件。

    example
    var test = node.addComponent("Test");

    Parameters

    • className: string

    Returns Component | null

attr

  • attr(attrs: Object): void
  • 属性配置函数。在 attrs 的所有属性将被设置为节点属性。

    example
    var attrs = { key: 0, num: 100 };
    node.attr(attrs);

    Parameters

    • attrs: Object

      Properties to be set to node

    Returns void

destroy

  • destroy(): boolean

destroyAllChildren

  • destroyAllChildren(): void
  • 销毁所有子节点,并释放所有它们对其它对象的引用。
    实际销毁操作会延迟到当前帧渲染前执行。

    example
    node.destroyAllChildren();

    Returns void

dispatchEvent

  • dispatchEvent(event: Event): void

emit

  • emit(type: string, ...args: any[]): void
  • Parameters

    • type: string
    • Rest ...args: any[]

    Returns void

getAnchorPoint

  • Parameters

    • Optional out: Vec2

    Returns Vec2

getChildByName

  • getChildByName(name: string): null | this
  • 通过名称获取节点的子节点。

    example
    var child = node.getChildByName("Test Node");

    Parameters

    • name: string

      A name to find the child node.

    Returns null | this

    a CCNode object whose name equals to the input parameter

getChildByPath

  • getChildByPath(path: string): null | this
  • 通过路径获取节点的子节点。

    example
    var child = node.getChildByPath("Test Node");

    Parameters

    • path: string

      A path to find the child node.

    Returns null | this

    a CCNode object whose name equals to the input parameter

getChildByUuid

  • getChildByUuid(uuid: string): null | this
  • 通过 uuid 获取节点的子节点。

    example
    var child = node.getChildByUuid(uuid);

    Parameters

    • uuid: string

      The uuid to find the child node.

    Returns null | this

    a Node whose uuid equals to the input parameter

getComponent

  • getComponent<T>(classConstructor: Constructor<T>): T | null
  • getComponent(className: string): Component | null
  • 获取节点上指定类型的组件,如果节点有附加指定类型的组件,则返回,如果没有则为空。
    传入参数也可以是脚本的名称。

    example
    // get custom test calss.
    var test = node.getComponent("Test");

    Type parameters

    Parameters

    Returns T | null

  • 获取节点上指定类型的组件,如果节点有附加指定类型的组件,则返回,如果没有则为空。
    传入参数也可以是脚本的名称。

    example
    // get custom test calss.
    var test = node.getComponent("Test");

    Parameters

    • className: string

    Returns Component | null

getComponentInChildren

  • getComponentInChildren<T>(classConstructor: Constructor<T>): T | null
  • getComponentInChildren(className: string): Component | null
  • 递归查找所有子节点中第一个匹配指定类型的组件。

    example
    var Test = node.getComponentInChildren("Test");

    Type parameters

    Parameters

    Returns T | null

  • 递归查找所有子节点中第一个匹配指定类型的组件。

    example
    var Test = node.getComponentInChildren("Test");

    Parameters

    • className: string

    Returns Component | null

getComponents

  • getComponents<T>(classConstructor: Constructor<T>): T[]
  • getComponents(className: string): Component[]
  • 返回节点上指定类型的所有组件。

    example
    var tests = node.getComponents("Test");

    Type parameters

    Parameters

    Returns T[]

  • 返回节点上指定类型的所有组件。

    example
    var tests = node.getComponents("Test");

    Parameters

    • className: string

    Returns Component[]

getComponentsInChildren

  • getComponentsInChildren<T>(classConstructor: Constructor<T>): T[]
  • getComponentsInChildren(className: string): Component[]
  • 递归查找自身或所有子节点中指定类型的组件

    example
    var tests = node.getComponentsInChildren("Test");

    Type parameters

    Parameters

    Returns T[]

  • 递归查找自身或所有子节点中指定类型的组件

    example
    var tests = node.getComponentsInChildren("Test");

    Parameters

    • className: string

    Returns Component[]

getContentSize

  • Parameters

    • Optional out: Size

    Returns Size

getParent

  • getParent(): null | this
  • 获取该节点的父节点。

    example
    var parent = this.node.getParent();

    Returns null | this

getPosition

  • 获取本地坐标

    Parameters

    • Optional out: Vec3

      输出到此目标 vector

    Returns Vec3

getRotation

  • 获取本地旋转

    Parameters

    • Optional out: Quat

      输出到此目标 quaternion

    Returns Quat

getScale

  • 获取本地缩放

    Parameters

    • Optional out: Vec3

      输出到此目标 vector

    Returns Vec3

getSiblingIndex

  • getSiblingIndex(): number
  • 获取同级索引。

    example
    var index = node.getSiblingIndex();

    Returns number

getWorldMatrix

  • 获取世界变换矩阵

    Parameters

    • Optional out: Mat4

      输出到此目标矩阵

    Returns Mat4

getWorldPosition

  • 获取世界坐标

    Parameters

    • Optional out: Vec3

      输出到此目标 vector

    Returns Vec3

getWorldRS

  • 获取只包含旋转和缩放的世界变换矩阵

    Parameters

    • Optional out: Mat4

      输出到此目标矩阵

    Returns Mat4

getWorldRT

  • 获取只包含旋转和位移的世界变换矩阵

    Parameters

    • Optional out: Mat4

      输出到此目标矩阵

    Returns Mat4

getWorldRotation

  • 获取世界旋转

    Parameters

    • Optional out: Quat

      输出到此目标 quaternion

    Returns Quat

getWorldScale

  • 获取世界缩放

    Parameters

    • Optional out: Vec3

      输出到此目标 vector

    Returns Vec3

hasEventListener

  • hasEventListener(type: string): boolean
  • Parameters

    • type: string

    Returns boolean

insertChild

  • insertChild(child: this, siblingIndex: number): void
  • 插入子节点到指定位置

    example
    node.insertChild(child, 2);

    Parameters

    • child: this

      the child node to be inserted 要插入的子节点

    • siblingIndex: number

      the sibling index to place the child in 用于放置子节点的同级索引

    Returns void

invalidateChildren

  • 递归标记节点世界变换为 dirty

    Parameters

    Returns void

inverseTransformPoint

  • Parameters

    Returns Vec3

isChildOf

  • isChildOf(parent: this | null): boolean
  • 是否是指定节点的子节点?

    example
    node.isChildOf(newNode);

    Parameters

    • parent: this | null

    Returns boolean

    True if this node is a child, deep child or identical to the given node.

lookAt

  • 设置当前节点旋转为面向目标位置,默认前方为 -z 方向

    Parameters

    • pos: Vec3

      目标位置

    • Optional up: Vec3

      坐标系的上方向

    Returns void

off

  • off(type: string, callback?: Function, target?: Object, useCapture?: any): void
  • Parameters

    • type: string
    • Optional callback: Function
    • Optional target: Object
    • Optional useCapture: any

    Returns void

on

  • Parameters

    Returns void

once

  • once(type: string, callback: Function, target?: Object, useCapture?: any): void
  • Parameters

    • type: string
    • callback: Function
    • Optional target: Object
    • Optional useCapture: any

    Returns void

pauseSystemEvents

  • pauseSystemEvents(recursive: boolean): void
  • Parameters

    • recursive: boolean

    Returns void

removeAllChildren

  • removeAllChildren(): void
  • 移除节点所有的子节点。

    example
    node.removeAllChildren();

    Returns void

removeChild

  • removeChild(child: this): void
  • 移除节点中指定的子节点。

    example
    node.removeChild(newNode);

    Parameters

    • child: this

      The child node which will be removed. 将被移除的子节点

    Returns void

removeComponent

  • removeComponent<T>(classConstructor: Constructor<T>): void
  • removeComponent(classNameOrInstance: string | Component): void
  • 删除节点上的指定组件,传入参数可以是一个组件构造函数或组件名,也可以是已经获得的组件引用。 如果你已经获得组件引用,你也可以直接调用 component.destroy()

    deprecated

    please destroy the component to remove it.

    example
    const sprite = node.getComponent(CC.Sprite);
    if (sprite) {
        node.removeComponent(sprite);
    }
    node.removeComponent('cc.SpriteComponent');

    Type parameters

    Parameters

    Returns void

  • 删除节点上的指定组件,传入参数可以是一个组件构造函数或组件名,也可以是已经获得的组件引用。 如果你已经获得组件引用,你也可以直接调用 component.destroy()

    deprecated

    please destroy the component to remove it.

    example
    const sprite = node.getComponent(CC.Sprite);
    if (sprite) {
        node.removeComponent(sprite);
    }
    node.removeComponent('cc.SpriteComponent');

    Parameters

    Returns void

removeFromParent

  • removeFromParent(): void
  • 从父节点中删除该节点。
    如果这个节点是一个孤节点,那么什么都不会发生。

    see

    cc.Node#removeFromParentAndCleanup

    example
    node.removeFromParent();

    Returns void

resumeSystemEvents

  • resumeSystemEvents(recursive: boolean): void
  • Parameters

    • recursive: boolean

    Returns void

rotate

  • 旋转节点

    Parameters

    Returns void

setAnchorPoint

  • setAnchorPoint(point: Vec2 | number, y?: undefined | number): void
  • Parameters

    • point: Vec2 | number
    • Optional y: undefined | number

    Returns void

setContentSize

  • setContentSize(size: Size | number, height?: undefined | number): void
  • Parameters

    • size: Size | number
    • Optional height: undefined | number

    Returns void

setParent

  • setParent(value: this | null, keepWorldTransform?: boolean): void
  • 设置父节点

    Parameters

    • value: this | null

      父节点

    • Default value keepWorldTransform: boolean = false

      是否保留当前世界变换

    Returns void

setPosition

  • setPosition(position: Vec3): void
  • setPosition(x: number, y: number, z: number): void
  • 设置本地坐标

    Parameters

    • position: Vec3

      目标本地坐标

    Returns void

  • 设置本地坐标

    Parameters

    • x: number

      目标本地坐标的 X 分量

    • y: number

      目标本地坐标的 Y 分量

    • z: number

      目标本地坐标的 Z 分量

    Returns void

setRotation

  • setRotation(rotation: Quat): void
  • setRotation(x: number, y: number, z: number, w: number): void
  • 设置本地旋转

    Parameters

    • rotation: Quat

      目标本地旋转

    Returns void

  • 设置本地旋转

    Parameters

    • x: number

      目标本地旋转的 X 分量

    • y: number

      目标本地旋转的 Y 分量

    • z: number

      目标本地旋转的 Z 分量

    • w: number

      目标本地旋转的 W 分量

    Returns void

setRotationFromEuler

  • setRotationFromEuler(x: number, y: number, z: number): void
  • 通过欧拉角设置本地旋转

    Parameters

    • x: number

      目标欧拉角的 X 分量

    • y: number

      目标欧拉角的 Y 分量

    • z: number

      目标欧拉角的 Z 分量

    Returns void

setScale

  • setScale(scale: Vec3): void
  • setScale(x: number, y: number, z: number): void
  • 设置本地缩放

    Parameters

    • scale: Vec3

      目标本地缩放

    Returns void

  • 设置本地缩放

    Parameters

    • x: number

      目标本地缩放的 X 分量

    • y: number

      目标本地缩放的 Y 分量

    • z: number

      目标本地缩放的 Z 分量

    Returns void

setSiblingIndex

  • setSiblingIndex(index: number): void
  • 设置节点同级索引。

    example
    node.setSiblingIndex(1);

    Parameters

    • index: number

    Returns void

setWorldPosition

  • setWorldPosition(position: Vec3): void
  • setWorldPosition(x: number, y: number, z: number): void
  • 设置世界坐标

    Parameters

    • position: Vec3

      目标世界坐标

    Returns void

  • 设置世界坐标

    Parameters

    • x: number

      目标世界坐标的 X 分量

    • y: number

      目标世界坐标的 Y 分量

    • z: number

      目标世界坐标的 Z 分量

    Returns void

setWorldRotation

  • setWorldRotation(rotation: Quat): void
  • setWorldRotation(x: number, y: number, z: number, w: number): void
  • 设置世界旋转

    Parameters

    • rotation: Quat

      目标世界旋转

    Returns void

  • 设置世界旋转

    Parameters

    • x: number

      目标世界旋转的 X 分量

    • y: number

      目标世界旋转的 Y 分量

    • z: number

      目标世界旋转的 Z 分量

    • w: number

      目标世界旋转的 W 分量

    Returns void

setWorldRotationFromEuler

  • setWorldRotationFromEuler(x: number, y: number, z: number): void
  • 通过欧拉角设置世界旋转

    Parameters

    • x: number

      目标欧拉角的 X 分量

    • y: number

      目标欧拉角的 Y 分量

    • z: number

      目标欧拉角的 Z 分量

    Returns void

setWorldScale

  • setWorldScale(scale: Vec3): void
  • setWorldScale(x: number, y: number, z: number): void
  • 设置世界缩放

    Parameters

    • scale: Vec3

      目标世界缩放

    Returns void

  • 设置世界缩放

    Parameters

    • x: number

      目标世界缩放的 X 分量

    • y: number

      目标世界缩放的 Y 分量

    • z: number

      目标世界缩放的 Z 分量

    Returns void

targetOff

  • targetOff(target: string | Object): void
  • Parameters

    • target: string | Object

    Returns void

translate

  • 移动节点

    Parameters

    Returns void

updateWorldTransform

  • updateWorldTransform(): void
  • 更新节点的世界变换信息

    Returns void

walk

  • walk(prefunc: function, postfunc?: undefined | function): void
  • 遍历该节点的子树里的所有节点并按规则执行回调函数。 对子树中的所有节点,包含当前节点,会执行两次回调,prefunc 会在访问它的子节点之前调用,postfunc 会在访问所有子节点之后调用。 这个函数的实现不是基于递归的,而是基于栈展开递归的方式。 请不要在 walk 过程中对任何其他的节点嵌套执行 walk。

    example
    node.walk(function (target) {
        console.log('Walked through node ' + target.name + ' for the first time');
    }, function (target) {
        console.log('Walked through node ' + target.name + ' after walked all children in its sub tree');
    });

    Parameters

    • prefunc: function

      The callback to process node when reach the node for the first time

        • (target: this): void
        • Parameters

          • target: this

          Returns void

    • Optional postfunc: undefined | function

      The callback to process node when re-visit the node after walked all children in its sub tree

    Returns void

Static deferredDestroy

  • _deferredDestroy(): void

Static Protected findChildComponent

  • findChildComponent(children: BaseNode[], constructor: any): any

Static Protected findChildComponents

  • findChildComponents(children: BaseNode[], constructor: any, components: any): void

Static Protected findComponent

Static Protected findComponents

  • findComponents(node: BaseNode, constructor: Function, components: Component[]): void

Static setScene

  • Parameters

    Returns void

Static isNode

  • isNode(obj: object | null): boolean
  • 指定对象是否是普通的场景节点?

    Parameters

    • obj: object | null

      待测试的节点

    Returns boolean

Generated using TypeDoc