EasyARSession Component

Description

持有并管理场景中的 BlockControllerBlockAnnotationController 。 标签参数与组件参数映射参考 EasyARSessionDataMapping


Component type

"easyar-session"


Extends


Methods

onAdd

typescript

public onAdd(parent: XrFrame.Element, data: IEasyARSessionData ): void;

组件添加时执行。

onUpdate

typescript

public onUpdate(data: IEasyARSessionData , preData: IEasyARSessionData ): void;

数据更新时执行。

onTick

typescript

public onTick(dt: number, data: IEasyARSessionData ): void;

每帧执行。

onRemove

typescript

public onRemove(parent: XrFrame.Element, data: IEasyARSessionData ): void

组件移除时执行

onRelease

typescript

public onRelease(data: IEasyARSessionData ): void

组件释放时执行

getBlockHolder

typescript

public getBlockHolder(): BlockHolder ;

获取场景中的 BlockHolder 组件。

loadEma

typescript

public loadEma(id: string): Promise < BlockHolder >;

通过id加载一个ema标注数据并还原到场景树,加载完成后会将BlockHolder返回,会执行已注册的"emaLoaded"事件。

loadCurrentEma

typescript

public loadCurrentEma(): Promise < BlockHolder >;

加载当前设置到组件data中的araId,加载完成后返回BlockHolder,会执行已注册的"emaLoaded"事件。 当xr-easyar-session组件上设置araId时会在初始化完成后自动执行。

queryEma

typescript

public queryEma(annotationId: string): Promise < IEmaData >;

通过id请求一个ema数据。 不会还原到场景树,不会执行"emaLoaded"事件,仅获取ema数据。

holdEma

typescript

public holdEma(ema: IEmaData , option?: { clearPrevious?: boolean }): void;

持有一个ema数据并还原到场景树。

option:

clearPrevious: 是否清除已持有的ema。

设置为true,则会删除所有已创建的BlockController和BlockAnnotationController并重置BlockHolder状态。 设置为false,则将传入的ema还原并添加到场景树中,若存在id相同的block或annotation,则会覆盖其状态。

localize

typescript

public localize(): Promise<any>;

执行一次单帧定位

resetTracker

typescript

public resetTracker(): void;

重置稳定器的状态