@animech-public/playcanvas
Version:
PlayCanvas WebGL game engine
2 lines (1 loc) • 1.89 kB
JavaScript
import{EventHandler as e}from"../../core/event-handler.js";import{Mat4 as t}from"../../core/math/mat4.js";class i extends e{constructor(e){super(),this._manager=void 0,this._views=void 0,this._available=!1,this._evtDepthResize=null,this._uvMatrix=t.IDENTITY.clone(),this._manager=e,this._views=e.views,this._views.supportedDepth&&(this._manager.on("start",this._onSessionStart,this),this._manager.on("end",this._onSessionEnd,this))}_onSessionStart(){var e;this._views.availableDepth&&(this._evtDepthResize=null==(e=this._views.list[0])?void 0:e.on("depth:resize",this._onDepthResize,this))}_onSessionEnd(){this._evtDepthResize&&(this._evtDepthResize.off(),this._evtDepthResize=null),this._available&&(this._available=!1,this.fire("unavailable"))}_onDepthResize(e,t){this.fire("resize",e,t)}getDepth(e,t){var i,s;return null!=(i=null==(s=this._views.list[0])?void 0:s.getDepth(e,t))?i:null}update(){this._manager.session&&this.supported&&this._views.availableDepth&&this._views.list.length&&!this._available&&(this._available=!0,this.fire("available"))}get supported(){return this._views.supportedDepth}get available(){return this._views.availableDepth}get usage(){return this._views.depthUsage}get dataFormat(){return this._views.depthFormat}get width(){var e,t;return null!=(e=null==(t=this._views.list[0])||null==(t=t.textureDepth)?void 0:t.width)?e:0}get height(){var e,t;return null!=(e=null==(t=this._views.list[0])||null==(t=t.textureDepth)?void 0:t.height)?e:0}get texture(){var e;return null==(e=this._views.list[0])?void 0:e.textureDepth}get uvMatrix(){var e,t;return null!=(e=null==(t=this._views.list[0])?void 0:t.depthUvMatrix)?e:this._uvMatrix}get rawValueToMeters(){var e,t;return null!=(e=null==(t=this._views.list[0])?void 0:t.depthValueToMeters)?e:0}}i.EVENT_AVAILABLE="available",i.EVENT_UNAVAILABLE="unavailable",i.EVENT_RESIZE="resize";export{i as XrDepthSensing};