@glowjs/core
Version:
GlowJS数字孪生引擎核心库。
113 lines (112 loc) • 2.67 kB
TypeScript
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>;
}