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

    Interface SemanticMesh

    Mesh

    const mesh = new Hilo3d.Mesh({
    geometry: new Hilo3d.BoxGeometry(),
    material: new Hilo3d.BasicMaterial({
    diffuse: new Hilo3d.Color(0.8, 0, 0)
    }),
    x:100,
    rotationX:30
    });
    stage.addChild(mesh);
    interface SemanticMesh {
        __forceUseParentWorldMatrix: boolean;
        _listeners: ListenerMap | null;
        _matrixDirty: boolean;
        _originName?: string;
        _quatDirty: boolean;
        anim: Animation | null;
        animationId: string;
        autoUpdateChildWorldMatrix: boolean;
        autoUpdateWorldMatrix: boolean;
        children: Node[];
        className: string;
        frustumTest: boolean;
        geometry: Geometry;
        id: string;
        isCamera: boolean;
        isMesh: boolean;
        isNode: boolean;
        isSkinnedMesh: boolean;
        jointName: string;
        material: Material | null;
        matrixVersion: number;
        name: string;
        needCallChildUpdate: boolean;
        onlySyncQuaternion: boolean;
        onUpdate: ((deltaTime: number) => void) | null;
        parent: Node | null;
        pointerChildren: boolean;
        pointerEnabled: boolean;
        up: Vector3;
        useHandCursor: boolean;
        useInstanced: boolean;
        userData: unknown;
        visible: boolean;
        worldMatrix: Matrix4;
        worldMatrixVersion: number;
        get isDestroyed(): boolean;
        get matrix(): Matrix4Notifier;
        get pivot(): Vector3Notifier;
        get pivotX(): number;
        set pivotX(value: number): void;
        get pivotY(): number;
        set pivotY(value: number): void;
        get pivotZ(): number;
        set pivotZ(value: number): void;
        get position(): Vector3Notifier;
        get quaternion(): Quaternion;
        get rotation(): EulerNotifier;
        get rotationX(): number;
        set rotationX(value: number): void;
        get rotationY(): number;
        set rotationY(value: number): void;
        get rotationZ(): number;
        set rotationZ(value: number): void;
        get scale(): Vector3Notifier;
        get scaleX(): number;
        set scaleX(value: number): void;
        get scaleY(): number;
        set scaleY(value: number): void;
        get scaleZ(): number;
        set scaleZ(value: number): void;
        get x(): number;
        set x(value: number): void;
        get y(): number;
        set y(value: number): void;
        get z(): number;
        set z(value: number): void;
        _firePointerEvent(event: NodePointerEvent): void;
        _onMatrixUpdate(): void;
        _onPivotUpdate(): void;
        _onPositionUpdate(): void;
        _onQuaternionUpdate(): void;
        _onRotationUpdate(): void;
        _onScaleUpdate(): void;
        addChild(child: Node): this;
        addTo(parent: Node): this;
        clone(isChild?: boolean): Mesh;
        destroy(
            renderer?: Renderer<RendererBackend>,
            needDestroyTextures?: boolean,
        ): this;
        fire(typeOrEvent?: string | DispatchEvent, detail?: unknown): boolean;
        getBounds(
            parent?: Node,
            currentMatrix?: Matrix4,
            bounds?: Bounds,
        ): Bounds | undefined;
        getChildByFn(fn: NodeGetChildByCallback): Node | null;
        getChildByFnBFS(fn: NodeGetChildByCallback): Node | null;
        getChildById(id: string): Node | null;
        getChildByName(name: string): Node | null;
        getChildByNamePath(path: string[]): Node | null;
        getChildrenByBaseClassName(className: string): Node[];
        getChildrenByClassName(className: string): Node[];
        getChildrenByFn(fn: NodeGetChildByCallback): Node[];
        getChildrenByName(name: string): Node[];
        getChildrenNameMap(): Record<string, Node>;
        getConcatenatedMatrix(ancestor?: Node): Matrix4;
        getJointMat(): Float32Array;
        getRenderOption(opt?: ShaderOptions): ShaderOptions;
        lookAt(node: { x: number; y: number; z: number }): this;
        off(type?: string, listener?: EventListener<DispatchEvent>): this;
        on(type: string, listener: EventListener, once?: boolean): this;
        raycast(ray: Ray, sort?: boolean): Vector3[] | null;
        removeChild(child: Node): this;
        removeFromParent(): this;
        resetSkinnedMeshRootNode(): void;
        setAnim(anim: Animation): this;
        setPivot(x: number, y: number, z: number): this;
        setPosition(x: number, y: number, z: number): this;
        setRotation(x: number, y: number, z: number): this;
        setScale(x: number, y?: number, z?: number): this;
        traverse(callback: NodeTraverseCallback, onlyChild?: boolean): this;
        traverseBFS(callback: NodeTraverseCallback, onlyChild?: boolean): this;
        traverseUpdate(dt: number): this;
        updateMatrix(): this;
        updateMatrixWorld(force?: boolean): this;
        updateQuaternion(): this;
        updateTransform(): this;
    }

    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 = 'Mesh'
    frustumTest: boolean = true

    是否开启视锥体裁剪

    geometry: Geometry
    id: string
    isCamera: boolean = false
    isMesh: boolean = true
    isNode: boolean = true
    isSkinnedMesh: boolean
    jointName: string = ''

    骨骼名称

    material: Material | null = null
    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

    是否用鼠标指针

    useInstanced: boolean = false

    是否使用 Instanced

    userData: unknown = null

    用户数据

    visible: boolean = true

    节点是否显示

    worldMatrix: Matrix4
    worldMatrixVersion: number = 0

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

    • get isDestroyed(): boolean

      是否被销毁

      Returns boolean

    • 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

      • parent: Node

        需要添加到的父元素

      Returns this

      this

    • clone 当前mesh

      Parameters

      • OptionalisChild: boolean

        是否子元素

      Returns Mesh

      返回clone的实例

    • 获取元素的包围盒信息

      Parameters

      • Optionalparent: Node

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

      • OptionalcurrentMatrix: Matrix4

        当前计算的矩阵

      • Optionalbounds: Bounds

        当前计算的包围盒信息

      Returns Bounds | undefined

      返回计算的包围盒信息

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

      Parameters

      • name: string

        元素name

      Returns Node | null

      获取的元素

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

      Parameters

      • path: string[]

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

      Returns Node | null

      返回获取到的子孙元素

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

      Returns Record<string, Node>

      返回获取的对象

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

      Parameters

      • Optionalancestor: Node

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

      Returns Matrix4

      返回获取的矩阵

    • 改变元素的朝向

      Parameters

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

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

      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

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

      Parameters

      • dt: number

      Returns this

      this

    • 更新世界矩阵

      Parameters

      • Optionalforce: boolean

        是否强制更新

      Returns this

      this