Hilo3d API - v2.0.0
    Preparing search index...

    Class Node

    节点,3D场景中的元素,是大部分类的基类

    const node = new Hilo3d.Node({
    name:'test',
    x:100,
    rotationX:30,
    onUpdate(){
    this.rotationY ++;
    }
    });
    node.scaleX = 0.3;
    stage.addChild(node);

    Hierarchy (View Summary)

    Index
    __forceUseParentWorldMatrix: boolean = false

    是否强制使用父元素 worldMatrix,供高级开发者使用

    _listeners: ListenerMap | null = null
    _matrixDirty: boolean = false
    _originName?: string
    _quatDirty: boolean = false
    anim: Animation | null = null

    动画

    animationId: string = ''

    animation 查找 id

    autoUpdateChildWorldMatrix: boolean = true

    是否自动更新子元素世界矩阵

    autoUpdateWorldMatrix: boolean = true

    是否自动更新世界矩阵

    children: Node[]
    className: string = 'Node'
    id: string
    isCamera: boolean = false
    isMesh: boolean = false
    isNode: boolean = true
    isSkinnedMesh: boolean = false
    jointName: string = ''

    骨骼名称

    matrixVersion: number = 0

    矩阵 version,每次改变会加一

    name: string = ''

    Node 的名字,可以通过 getChildByName 查找

    needCallChildUpdate: boolean = true

    每次更新的时候是否调用子节点的 onUpdate 方法

    onlySyncQuaternion: boolean = false

    只同步四元数,不同步欧拉角

    onUpdate: ((deltaTime: number) => void) | null = null

    update 回调

    parent: Node | null = null

    父节点

    pointerChildren: boolean = true

    子元素是否接受交互事件。

    pointerEnabled: boolean = true

    可视对象是否接受交互事件。默认为接受交互事件,即true。

    useHandCursor: boolean = false

    是否用鼠标指针

    userData: unknown = null

    用户数据

    visible: boolean = true

    节点是否显示

    worldMatrix: Matrix4
    worldMatrixVersion: number = 0

    世界矩阵 version,每次改变会加一

    TRAVERSE_STOP_ALL: 2 = TRAVERSE_STOP_ALL

    traverse callback 返回值,执行后暂停所有 traverse

    TRAVERSE_STOP_CHILDREN: 1 = TRAVERSE_STOP_CHILDREN

    traverse callback 返回值,执行后暂停子元素 traverse

    TRAVERSE_STOP_NONE: 0 = TRAVERSE_STOP_NONE

    traverse callback 返回值,执行后不暂停 traverse

    typeName: string = 'Node'
    • get pivotX(): number

      中心点x

      Returns number

    • set pivotX(value: number): void

      中心点x

      Parameters

      • value: number

      Returns void

    • get pivotY(): number

      中心点y

      Returns number

    • set pivotY(value: number): void

      中心点y

      Parameters

      • value: number

      Returns void

    • get pivotZ(): number

      中心点z

      Returns number

    • set pivotZ(value: number): void

      中心点z

      Parameters

      • value: number

      Returns void

    • get rotationX(): number

      旋转角度 x, 角度制

      Returns number

    • set rotationX(value: number): void

      旋转角度 x, 角度制

      Parameters

      • value: number

      Returns void

    • get rotationY(): number

      旋转角度 y, 角度制

      Returns number

    • set rotationY(value: number): void

      旋转角度 y, 角度制

      Parameters

      • value: number

      Returns void

    • get rotationZ(): number

      旋转角度 z, 角度制

      Returns number

    • set rotationZ(value: number): void

      旋转角度 z, 角度制

      Parameters

      • value: number

      Returns void

    • get scaleX(): number

      缩放比例x

      Returns number

    • set scaleX(value: number): void

      缩放比例x

      Parameters

      • value: number

      Returns void

    • get scaleY(): number

      缩放比例y

      Returns number

    • set scaleY(value: number): void

      缩放比例y

      Parameters

      • value: number

      Returns void

    • get scaleZ(): number

      缩放比例z

      Returns number

    • set scaleZ(value: number): void

      缩放比例z

      Parameters

      • value: number

      Returns void

    • get x(): number

      x轴坐标

      Returns number

    • set x(value: number): void

      x轴坐标

      Parameters

      • value: number

      Returns void

    • get y(): number

      y轴坐标

      Returns number

    • set y(value: number): void

      y轴坐标

      Parameters

      • value: number

      Returns void

    • get z(): number

      z轴坐标

      Returns number

    • set z(value: number): void

      z轴坐标

      Parameters

      • value: number

      Returns void

    • 添加一个子元素

      Parameters

      • child: Node

        需要添加的子元素

      Returns this

      this

    • 将当前元素添加到某个父元素的子元素中

      Parameters

      • parent: Node

        需要添加到的父元素

      Returns this

      this

    • Parameters

      • OptionalisChild: boolean

        是否子节点,子节点不会处理动画及骨骼Mesh,即如果有动画将共享

      Returns Node

      返回clone的Node

    • 获取元素的包围盒信息

      Parameters

      • Optionalparent: Node

        元素相对于哪个祖先元素的包围盒,不传表示世界

      • OptionalcurrentMatrix: Matrix4

        当前计算的矩阵

      • Optionalbounds: Bounds

        当前计算的包围盒信息

      Returns Bounds | undefined

      返回计算的包围盒信息

    • 获取指定id的子孙元素

      Parameters

      • id: string

        元素id

      Returns Node | null

      获取的元素

    • 获取指定name的首个子孙元素

      Parameters

      • name: string

        元素name

      Returns Node | null

      获取的元素

    • 根据 name path 来获取子孙元素

      Parameters

      • path: string[]

        名字数组, e.g., getChildByNamePath(['a', 'b', 'c'])

      Returns Node | null

      返回获取到的子孙元素

    • 获取指定基类名的所有子孙元素

      Parameters

      • className: string

        类名

      Returns Node[]

      获取的元素数组

    • 获取指定类名的所有子孙元素

      Parameters

      • className: string

        类名

      Returns Node[]

      获取的元素数组

    • 获取指定name的所有子孙元素

      Parameters

      • name: string

        元素name

      Returns Node[]

      获取的元素数组

    • 将所以子孙元素放到一个对象中,对象key为元素的name,value为该元素

      Returns Record<string, Node>

      返回获取的对象

    • 获取当前元素相对于指定元素的矩阵

      Parameters

      • Optionalancestor: Node

        相对于的元素,需要是当前元素的祖先元素,不传表示获取世界矩阵

      Returns Matrix4

      返回获取的矩阵

    • 改变元素的朝向

      Parameters

      • node: { x: number; y: number; z: number }

        需要朝向的元素,或者坐标

      Returns this

      this

    • 移除指定的子元素

      Parameters

      • child: Node

        需要移除的元素

      Returns this

      this

    • 将当前元素从其父元素中移除

      Returns this

      this

    • 重置子孙元素中 SkinnedMesh 的根节点为当前元素

      Returns void

    • 设置节点的动画,这个需要是模型的根节点

      Parameters

      Returns this

      this

    • 设置中心点

      Parameters

      • x: number

        中心点x

      • y: number

        中心点y

      • z: number

        中心点z

      Returns this

      this

    • 设置元素的位置

      Parameters

      • x: number

        X方向位置

      • y: number

        Y方向位置

      • z: number

        Z方向位置

      Returns this

      this

    • 设置元素的旋转

      Parameters

      • x: number

        X轴旋转角度, 角度制

      • y: number

        Y轴旋转角度, 角度制

      • z: number

        Z轴旋转角度, 角度制

      Returns this

      this

    • 设置元素的缩放比例,如果只有一个参数三个轴等比缩放

      Parameters

      • x: number

        X缩放比例

      • y: number = x

        Y缩放比例

      • z: number = y

        Z缩放比例

      Returns this

      this

    • 遍历当前元素的子孙元素

      Parameters

      • callback: NodeTraverseCallback

        每个元素都会调用这个函数处理

      • onlyChild: boolean = false

        是否只遍历子元素

      Returns this

      this

    • 遍历当前元素的子孙元素(广度优先)

      Parameters

      • callback: NodeTraverseCallback

        每个元素都会调用这个函数处理

      • onlyChild: boolean = false

        是否只遍历子元素

      Returns this

      this

    • 遍历调用子孙元素onUpdate方法

      Parameters

      • dt: number

      Returns this

      this

    • 更新本地矩阵

      Returns this

      this

    • 更新世界矩阵

      Parameters

      • Optionalforce: boolean

        是否强制更新

      Returns this

      this

    • 更新四元数

      Returns this

      this

    • 更新transform属性

      Returns this

      this