UNPKG

@babylonjs/viewer

Version:

The Babylon Viewer aims to simplify a specific but common Babylon.js use case: loading, viewing, and interacting with a 3D model.

3 lines (2 loc) 1.64 kB
import{d as t}from"./declarationMapper-D_filC93.esm.min.js";import{c as i}from"./KHR_interactivity-D4lwBSW9.esm.min.js";import{u as e}from"./index-BPURObVq.esm.min.js";import"./objectModelMapping-ClgDmo5Q.esm.min.js";import"./spotLight.pure-5s2DDDIt.esm.min.js";class a extends i{constructor(i){super(i),this.reset=this._registerSignalInput("reset"),this.duration=this.registerDataInput("duration",t),this.lastRemainingTime=this.registerDataOutput("lastRemainingTime",t,NaN)}_execute(t,i){if(i===this.reset)return this.lastRemainingTime.setValue(NaN,t),t._setExecutionVariable(this,"lastRemainingTime",NaN),void t._setExecutionVariable(this,"timestamp",0);const e=this.duration.getValue(t);if(e<=0||isNaN(e)||!isFinite(e))return this._reportError(t,"Invalid duration in Throttle block");const a=t._getExecutionVariable(this,"lastRemainingTime",NaN),s=Date.now();if(isNaN(a))return this.lastRemainingTime.setValue(0,t),t._setExecutionVariable(this,"lastRemainingTime",0),t._setExecutionVariable(this,"timestamp",s),this.out._activateSignal(t);{const i=s-t._getExecutionVariable(this,"timestamp",0),a=1e3*e;if(a<=i)return this.lastRemainingTime.setValue(0,t),t._setExecutionVariable(this,"lastRemainingTime",0),t._setExecutionVariable(this,"timestamp",s),this.out._activateSignal(t);{const e=a-i;this.lastRemainingTime.setValue(e/1e3,t),t._setExecutionVariable(this,"lastRemainingTime",e)}}}getClassName(){return"FlowGraphThrottleBlock"}}let s=!1;function n(){s||(s=!0,e("FlowGraphThrottleBlock",a))}n();export{a as FlowGraphThrottleBlock,n as RegisterFlowGraphThrottleBlock}; //# sourceMappingURL=flowGraphThrottleBlock-BSQQBzLs.esm.min.js.map