UNPKG

@glowjs/core

Version:

GlowJS数字孪生引擎核心库。

113 lines (112 loc) 2.67 kB
import { EventArg } from '../../../event/EventArg'; import { Point3D } from '../../../misc'; import { Entity } from '../../Entity'; import { Path } from '../../Path'; import { Thing } from '../../Thing'; import { Component } from '../Component'; import { PathAnimation } from '../PathAnimation'; /** * 漫游 */ export declare class Roaming extends Component { private static _app; private _edit; /** * 路径 */ _path: Path; /** * 角色 */ _character: Thing; /** * 路径动画 */ _pathAnimation: PathAnimation; private _appEvents; /** * 获取或设置垂直偏移 */ get offsetY(): number; set offsetY(value: number); /** * 相机水平方向角度默认值 */ static defaultAlpha: number; /** * 相机垂直方向角度默认值 */ static defaultBeta: number; /** * 相机到角色距离默认值 */ static defaultRadius: number; /** * 实例化一个漫游对象 * @param entity 实体对象 */ constructor(entity: Entity); /** * 获取或设置路径点集合 */ get points(): Point3D[]; set points(value: Point3D[]); /** * 获取或设置暂停 */ get pause(): boolean; set pause(value: boolean); /** * 获取或设置速度 */ get speed(): number; set speed(value: number); /** * 获取或设置路径可见性 */ get pathVisible(): boolean; set pathVisible(value: boolean); /** * 是否正在执行漫游 */ get executing(): boolean; /** * 监听事件 * @param type 事件类型 * @param callback 回调函数 */ on(type: 'EVENT_PAUSE' | 'EVENT_CONTINUE' | 'EVENT_ARRIVE' | 'EVENT_ENDPATHEDIT' | 'EVENT_POINTCLICK', callback: (ev: EventArg) => void): string; /** * 移除指定编号的事件 * @param id 事件唯一编号 */ off(id: string): void; /** * 开始路径编辑 */ startPathEdit(): void; /** * 结束路径编辑 */ private _endPathEdit; /** * 创建路径 */ buildPath(): void; /** * 开始漫游 * @param person 人称,true表示第一人称,false表示第三人称 */ startToRoam(person: boolean): Promise<void>; /** * 结束漫游 */ endToRoam(): void; private _setAppEvents; private _onLeftClick; private _onAfterFrame; /** * 结束路径编辑 */ endPathEdit(): Promise<void>; }