import * as THREE from 'three'; import { ContextManager, Event, Observable } from '@zcomponent/core'; import { StaticGroup } from '../StaticObject3D'; import * as Zappar from '@zappar/zappar'; /** * The World Tracker node lets you track 3D content to a point chosen by the user in the room or immediate environment around them. * With this tracking type you could build a 3D model viewer that lets users walk around to view the model from different angles, * or an experience that places an animated character in their room. * @zcomponent * @zgroup AR * @zicon travel_explore * @zlabel three/Object3D/Group/Zappar/WorldTracker * @ztag three/Zappar/WorldTracker * @zparents three/Object3D/Group/Group * @zdefaultchild "Ground Anchor" "@zcomponent/zappar-three/lib/components/anchorgroups/GroundAnchorGroup#GroundAnchorGroup" */ export declare class WorldTracker extends StaticGroup { private context; /** @zui */ onQualityGood: Event<[]>; /** @zui */ onQualityLimited: Event<[]>; readonly quality: Observable; /** * A layer clip that will be played when the world tracker is initializing - i.e. when requiring the user to move the camera * to acquire a surface in the world in front of them. * @zui * @zgroup Animation * @zgrouppriority 10 * @zvalues layerclipids */ initializingLayerClip: Observable; /** * A layer clip that will be played when initialization is complete and the world tracker is providing a valid 'ground' anchor. * @zui * @zgroup Animation * @zgrouppriority 10 * @zvalues layerclipids */ initializedLayerClip: Observable; /** * A layer clip that will be played when the tracking quality of the world tracker is 'good' - i.e. tracking in six degrees of * freedom around a ground anchor. * * @zui * @zgroup Animation * @zgrouppriority 10 * @zvalues layerclipids */ qualityGoodLayerClip: Observable; /** * A layer clip that will be played when the tracking quality of the world tracker has reduced to 'limited' * @zui * @zgroup Animation * @zgrouppriority 10 * @zvalues layerclipids */ qualityLimitedLayerClip: Observable; /** * Enables/disables just the world tracker. Unlike the `enabled` property, this does not disable the entire component. * @zui * @zgroup WorldTracker * @zgrouppriority 20 * @zdefault true */ trackingEnabled: Observable; /** * Resets the world tracker if the tracking quality is limited for a certain amount of time. * @zui * @ztype time-milliseconds * @zgroup WorldTracker * @zgrouppriority 20 * @zdefault 5000 */ resetAfterLimitedFor: Observable; groundAnchor: Zappar.WorldAnchor; private _worldTrackerContext; private _isInitializing; private _limitedTimeout; constructor(ctx: ContextManager, props: {}, parentForChildren?: THREE.Object3D); private _limitedTimeoutCallback; private _qualityUpdate; private _updateEnabled; private _frame; private _playLayerClip; dispose(): never; }