gl-draw 0.9.0-beta.331 → 0.9.0-beta.332

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var k=Object.defineProperty,N=Object.defineProperties;var U=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var _=Object.prototype.hasOwnProperty,H=Object.prototype.propertyIsEnumerable;var A=(r,e,t)=>e in r?k(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,g=(r,e)=>{for(var t in e||(e={}))_.call(e,t)&&A(r,t,e[t]);if(O)for(var t of O(e))H.call(e,t)&&A(r,t,e[t]);return r},R=(r,e)=>N(r,U(e));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("three"),W=require("@tweenjs/tween.js"),F=require("./events.js"),X=require("deepmerge"),Q=require("three/examples/jsm/libs/stats.module"),$=require("lil-gui"),T=require("./colorCorrection.js"),Y=require("./disposeMesh.js");require("idb-keyval");require("esus-lite");require("d3-geo");const z=require("./MeshLineMaterial.js"),M=require("camera-controls"),Z=require("three/examples/jsm/controls/TransformControls"),J=require("three/examples/jsm/renderers/CSS3DRenderer"),K=require("three/examples/jsm/renderers/CSS2DRenderer"),u=require("postprocessing"),ee=require("./isPlainObject.js"),te=require("./BaseObject.js");function I(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const s=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const h=I(y),B=I(W),se={antialias:!1,devicePixelRatio:window.devicePixelRatio,powerPreference:"high-performance",toneMappingExposure:1,alpha:!1,outputEncoding:T.TextureEncoding.Linear,outputColorSpace:T.ColorSpace.sRGB,logarithmicDepthBuffer:!1,preserveDrawingBuffer:!1,stencil:!1,depth:!1,physicallyCorrectLights:!1};class oe{constructor(e){this.options=e;const{width:t,height:s,rendererParams:o}=e,{canvas:n,context:i,alpha:c,devicePixelRatio:a,antialias:l,powerPreference:d,toneMappingExposure:m,outputEncoding:p,outputColorSpace:C,logarithmicDepthBuffer:w,preserveDrawingBuffer:f,stencil:S,depth:b,physicallyCorrectLights:v}=o,P=new h.WebGLRenderer({canvas:n,context:i,alpha:c,antialias:l,powerPreference:d,logarithmicDepthBuffer:w,preserveDrawingBuffer:f,stencil:S,depth:b});if(P.setSize(t,s),P.setPixelRatio(a),P.toneMappingExposure=m,+h.REVISION<152?P.outputEncoding=p:P.outputColorSpace=C,+h.REVISION<155){const V=+h.REVISION<150?"physicallyCorrectLights":"useLegacyLights";P[V]=v}this.renderer=P}setSize(e,t){this.renderer.setSize(e,t)}render(){const{scene:e,camera:t}=this.options;this.renderer.render(e,t)}dispose(){var e,t,s;(e=this.renderer)==null||e.clear(),(t=this.renderer)==null||t.dispose(),(s=this.renderer)==null||s.renderLists.dispose()}}class x{constructor(e){this.guiParams={},e&&(this.guiParams=e)}showGui(e){e&&Object.keys(this.guiParams).forEach(t=>{const s=e.addFolder(t),o=this.guiParams[t];Object.keys(o).forEach(n=>{const{min:i,max:c,step:a,name:l,paramMap:d,items:m,value:p,target:C}=o[n],w=n.toLowerCase().indexOf("color")>-1;let f;const S=typeof p=="undefined"&&C,b=S?C():o[n],v=S?n:"value";m?f=s.add(b,v,m):w?f=s.addColor(b,v):f=s.add(b,v),f=f.name(l||n),typeof i!="undefined"&&(f=f.min(i)),typeof c!="undefined"&&(f=f.max(c)),typeof a!="undefined"&&(f=f.step(a)),f=f.onChange(()=>{this.setTargetValue(t,n,b[v],d)}),S&&f.listen()})})}setTargetValue(e,t,s,o){const{onChange:n,target:i,value:c}=this.guiParams[e][t],a=t.toLowerCase().indexOf("color")>-1;if(i&&!(typeof c=="undefined"&&i)){let d=i();Array.isArray(d)||(d=[d]),d.forEach(m=>{if(m)if(a)try{m[o||t].set(s)}catch(p){t!=="color"&&!o&&console.warn(`${t} is not a color,set paramMap`)}else m[o||t]=s})}n&&n(s)}setTargetValueByParams(){Object.keys(this.guiParams).forEach(e=>{Object.keys(this.guiParams[e]).forEach(t=>{const s=this.guiParams[e][t];typeof s.value!="undefined"&&this.setTargetValue(e,t,s.value,s.paramMap)})})}}const ne={fov:45,near:1,far:1e3,up:new h.Vector3(0,1,0)};class re{constructor(e){this.oldCameraPosition=new h.Vector3,this.oldCameraRotation=new h.Euler,this.customCamera=!1,this.options=e;const{width:t,height:s,cameraParams:o}=e;if(o instanceof h.Camera)this.camera=o,this.customCamera=!0;else{const{fov:n,far:i,near:c,up:a}=o,l=new h.PerspectiveCamera(n,t/s,c,i);l.position.set(0,0,400),l.lookAt(0,0,0),l.up=a,this.camera=l}}checkCameraChange(){const e=this.camera,t=this.oldCameraPosition.equals(e.position)&&this.oldCameraRotation.equals(e.rotation);return this.oldCameraPosition=e.position.clone(),this.oldCameraRotation=e.rotation.clone(),!t}setSize(e,t){this.camera instanceof h.PerspectiveCamera&&(this.camera.aspect=e/t),this.camera.updateProjectionMatrix()}setGui(e){const t=new x({camera:R(g({},this.options.cameraControls?{}:{x:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position},y:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position},z:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position}}),{near:{min:0,max:1e3,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}},far:{min:0,max:2e4,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}}})});this.camera instanceof h.PerspectiveCamera&&(t.guiParams.camera.fov={min:0,max:90,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}}),t.showGui(e)}}const ie={background:null,om:!0};class ae{constructor(e){this.overrideMaterial=!1,this.options=e;const{camera:t,sceneParams:s}=e,{background:o,om:n}=s,i=n?new h.Scene:new Proxy(new h.Scene,{set:(c,a,l)=>Reflect.set(c,a,l),get:(c,a)=>{if(a==="overrideMaterial"){const l=Reflect.get(c,a);return this.overrideMaterial=!!l,z.meshLineMaterialArr.forEach(d=>{this.overrideMaterial?d.useDepth=1:d.useDepth=0}),null}return Reflect.get(c,a)}});o&&(i.background=o),i.add(t),this.scene=i}addAxesHelper(){var t;const e=new h.AxesHelper(100);(t=this.scene)==null||t.add(e)}dispose(){var e;(e=this.scene)==null||e.traverse(t=>{Y.disposeMesh(t)}),z.meshLineMaterialArr.length=0}}class ce{constructor(e){this.cameraControlsAction=M.ACTION,this.autoRotateSpeed=0,this.options=e;const{camera:t,controlsParams:s,customControl:o}=e,{domElement:n}=s;if(o){const i=new o(t,n);i.enableDamping=!0,i.dampingFactor=.063,i.autoRotate=!1,i.autoRotateSpeed=-60,i.enableZoom=!0,i.zoomSpeed=.2,this.controls=i}else M.install({THREE:h}),this.cameraControls=new M(t,n)}limitPan({maxX:e=1/0,minX:t=-1/0,maxZ:s=1/0,minZ:o=-1/0,maxY:n=1/0,minY:i=-1/0}){const c=this.limitPanV||new h.Vector3,a=this.controls;if(a){const{camera:l}=this.options,d=new h.Vector3(t,i,o),m=new h.Vector3(e,n,s);this.limitPanV=c,c.copy(a.target),a.target.clamp(d,m),c.sub(a.target),l.position.sub(c)}}changeRotation({vertical:e,horizontal:t,distance:s}){const{camera:o}=this.options,n=this.controls;if(n){const i=t!=null?t:n.getAzimuthalAngle(),c=e!=null?e:n.getPolarAngle(),a=new h.Vector3;a.setFromSphericalCoords(s!=null?s:o.position.distanceTo(n.target),c,i);const l=new h.Quaternion().setFromUnitVectors(new h.Vector3(0,1,0),o.up);a.applyQuaternion(l),o.position.set(a.x+n.target.x,a.y+n.target.y,a.z+n.target.z),n.update()}}enable(){this.controls?this.controls.enabled=!0:this.cameraControls&&(this.cameraControls.enabled=!0)}disable(){this.controls?this.controls.enabled=!1:this.cameraControls&&(this.cameraControls.enabled=!1)}update(e){var t,s;(t=this.controls)==null||t.update(),(s=this.cameraControls)==null||s.update(e),this.autoRotateSpeed&&this.cameraControls&&(this.cameraControls.azimuthAngle+=this.autoRotateSpeed*e*h.MathUtils.DEG2RAD)}dispose(){var e,t;(e=this.controls)==null||e.dispose(),(t=this.cameraControls)==null||t.dispose()}}class le{constructor(e){this.event=new F.eventsExports.EventEmitter;const{renderer:t,scene:s,camera:o}=e,n=new Z.TransformControls(o,t.domElement);s.add(n),this.controls=n,this.addEvent()}get detach(){return this.controls.detach.bind(this.controls)}get attach(){return this.controls.attach.bind(this.controls)}addEvent(){let e=null,t=null,s=null;const o=this.controls;o.addEventListener("change",()=>{const n=o.object;n!==void 0&&this.event.emit("change",n)}),o.addEventListener("mouseDown",()=>{const n=o.object;e=n.position.clone(),t=n.rotation.clone(),s=n.scale.clone(),this.event.emit("mouseDown",n)}),o.addEventListener("mouseUp",()=>{const n=o.object;if(n!==void 0)switch(o.getMode()){case"translate":e.equals(n.position)||this.event.emit("translate",n,n.position,e);break;case"rotate":t.equals(n.rotation)||this.event.emit("rotate",n,n.rotation,t);break;case"scale":s.equals(n.scale)||this.event.emit("scale",n,n.scale,s);break}this.event.emit("mouseUp")})}dispose(){var e;this.event.removeAllListeners(),(e=this.controls)==null||e.dispose()}}const L={zIndex:"auto"};class de{constructor(e){this.container=e}addRenderer(e,t){const s=t.container||this.container,o=s.offsetWidth,n=s.offsetHeight,i=e==="css2d"?new K.CSS2DRenderer:new J.CSS3DRenderer;i.domElement.style.position="absolute",i.domElement.style.top="0",i.domElement.style.pointerEvents="none",i.domElement.style.zIndex=t.zIndex,i.setSize(o,n),s.appendChild(i.domElement),e==="css2d"?this.css2Drenderer=i:e==="css3d"&&(this.css3Drenderer=i)}setSize(e,t){var s,o;(s=this.css2Drenderer)==null||s.setSize(e,t),(o=this.css3Drenderer)==null||o.setSize(e,t)}render(e,t){var s,o;(s=this.css2Drenderer)==null||s.render(e,t),(o=this.css3Drenderer)==null||o.render(e,t)}dispose(){this.css2Drenderer=void 0,this.css3Drenderer=void 0}}const j=["encodings_fragment","colorspace_fragment"];class he extends y.ShaderMaterial{constructor(){super({uniforms:{inputBuffer:new y.Uniform(null),ratio:new y.Uniform(1)},fragmentShader:`
1
+ "use strict";var k=Object.defineProperty,N=Object.defineProperties;var U=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var _=Object.prototype.hasOwnProperty,H=Object.prototype.propertyIsEnumerable;var A=(r,e,t)=>e in r?k(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,g=(r,e)=>{for(var t in e||(e={}))_.call(e,t)&&A(r,t,e[t]);if(O)for(var t of O(e))H.call(e,t)&&A(r,t,e[t]);return r},R=(r,e)=>N(r,U(e));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("three"),W=require("@tweenjs/tween.js"),F=require("./events.js"),X=require("deepmerge"),Q=require("three/examples/jsm/libs/stats.module"),$=require("lil-gui"),T=require("./colorCorrection.js"),Y=require("./disposeMesh.js");require("idb-keyval");require("esus-lite");require("d3-geo");const B=require("./MeshLineMaterial.js"),M=require("camera-controls"),Z=require("three/examples/jsm/controls/TransformControls"),J=require("three/examples/jsm/renderers/CSS3DRenderer"),K=require("three/examples/jsm/renderers/CSS2DRenderer"),u=require("postprocessing"),ee=require("./isPlainObject.js"),te=require("./BaseObject.js");function I(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const s=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const h=I(y),z=I(W),se={antialias:!1,devicePixelRatio:window.devicePixelRatio,powerPreference:"high-performance",toneMappingExposure:1,alpha:!1,outputEncoding:T.TextureEncoding.Linear,outputColorSpace:T.ColorSpace.sRGB,logarithmicDepthBuffer:!1,preserveDrawingBuffer:!1,stencil:!1,depth:!1,physicallyCorrectLights:!1};class oe{constructor(e){this.options=e;const{width:t,height:s,rendererParams:o}=e,{canvas:n,context:i,alpha:c,devicePixelRatio:a,antialias:l,powerPreference:d,toneMappingExposure:m,outputEncoding:p,outputColorSpace:C,logarithmicDepthBuffer:w,preserveDrawingBuffer:f,stencil:S,depth:b,physicallyCorrectLights:v}=o,P=new h.WebGLRenderer({canvas:n,context:i,alpha:c,antialias:l,powerPreference:d,logarithmicDepthBuffer:w,preserveDrawingBuffer:f,stencil:S,depth:b});if(P.setSize(t,s),P.setPixelRatio(a),P.toneMappingExposure=m,+h.REVISION<152?P.outputEncoding=p:P.outputColorSpace=C,+h.REVISION<155){const V=+h.REVISION<150?"physicallyCorrectLights":"useLegacyLights";P[V]=v}this.renderer=P}setSize(e,t){this.renderer.setSize(e,t)}render(){const{scene:e,camera:t}=this.options;this.renderer.render(e,t)}dispose(){var e,t,s;(e=this.renderer)==null||e.clear(),(t=this.renderer)==null||t.dispose(),(s=this.renderer)==null||s.renderLists.dispose()}}class x{constructor(e){this.guiParams={},e&&(this.guiParams=e)}showGui(e){e&&Object.keys(this.guiParams).forEach(t=>{const s=e.addFolder(t),o=this.guiParams[t];Object.keys(o).forEach(n=>{const{min:i,max:c,step:a,name:l,paramMap:d,items:m,value:p,target:C}=o[n],w=n.toLowerCase().indexOf("color")>-1;let f;const S=typeof p=="undefined"&&C,b=S?C():o[n],v=S?n:"value";m?f=s.add(b,v,m):w?f=s.addColor(b,v):f=s.add(b,v),f=f.name(l||n),typeof i!="undefined"&&(f=f.min(i)),typeof c!="undefined"&&(f=f.max(c)),typeof a!="undefined"&&(f=f.step(a)),f=f.onChange(()=>{this.setTargetValue(t,n,b[v],d)}),S&&f.listen()})})}setTargetValue(e,t,s,o){const{onChange:n,target:i,value:c}=this.guiParams[e][t],a=t.toLowerCase().indexOf("color")>-1;if(i&&!(typeof c=="undefined"&&i)){let d=i();Array.isArray(d)||(d=[d]),d.forEach(m=>{if(m)if(a)try{m[o||t].set(s)}catch(p){t!=="color"&&!o&&console.warn(`${t} is not a color,set paramMap`)}else m[o||t]=s})}n&&n(s)}setTargetValueByParams(){Object.keys(this.guiParams).forEach(e=>{Object.keys(this.guiParams[e]).forEach(t=>{const s=this.guiParams[e][t];typeof s.value!="undefined"&&this.setTargetValue(e,t,s.value,s.paramMap)})})}}const ne={fov:45,near:1,far:1e3,up:new h.Vector3(0,1,0)};class re{constructor(e){this.oldCameraPosition=new h.Vector3,this.oldCameraRotation=new h.Euler,this.customCamera=!1,this.options=e;const{width:t,height:s,cameraParams:o}=e;if(o instanceof h.Camera)this.camera=o,this.customCamera=!0;else{const{fov:n,far:i,near:c,up:a}=o,l=new h.PerspectiveCamera(n,t/s,c,i);l.position.set(0,0,400),l.lookAt(0,0,0),l.up=a,this.camera=l}}checkCameraChange(){const e=this.camera,t=this.oldCameraPosition.equals(e.position)&&this.oldCameraRotation.equals(e.rotation);return this.oldCameraPosition=e.position.clone(),this.oldCameraRotation=e.rotation.clone(),!t}setSize(e,t){this.camera instanceof h.PerspectiveCamera&&(this.camera.aspect=e/t),this.camera.updateProjectionMatrix()}setGui(e){const t=new x({camera:R(g({},this.options.cameraControls?{}:{x:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position},y:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position},z:{min:-1e4,max:1e4,step:1,target:()=>this.camera.position}}),{near:{min:0,max:1e3,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}},far:{min:0,max:2e4,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}}})});this.camera instanceof h.PerspectiveCamera&&(t.guiParams.camera.fov={min:0,max:90,step:1,target:()=>this.camera,onChange:s=>{this.camera.updateProjectionMatrix()}}),t.showGui(e)}}const ie={background:null,om:!0};class ae{constructor(e){this.overrideMaterial=!1,this.options=e;const{camera:t,sceneParams:s}=e,{background:o,om:n}=s,i=n?new h.Scene:new Proxy(new h.Scene,{set:(c,a,l)=>Reflect.set(c,a,l),get:(c,a)=>{if(a==="overrideMaterial"){const l=Reflect.get(c,a);return this.overrideMaterial=!!l,B.meshLineMaterialArr.forEach(d=>{this.overrideMaterial?d.useDepth=1:d.useDepth=0}),null}return Reflect.get(c,a)}});o&&(i.background=o),i.add(t),this.scene=i}addAxesHelper(){var t;const e=new h.AxesHelper(100);(t=this.scene)==null||t.add(e)}dispose(){var e;(e=this.scene)==null||e.traverse(t=>{Y.disposeMesh(t)}),B.meshLineMaterialArr.length=0}}class ce{constructor(e){this.cameraControlsAction=M.ACTION,this.autoRotateSpeed=0,this.options=e;const{camera:t,controlsParams:s,customControl:o}=e,{domElement:n}=s;if(o){const i=new o(t,n);i.enableDamping=!0,i.dampingFactor=.063,i.autoRotate=!1,i.autoRotateSpeed=-60,i.enableZoom=!0,i.zoomSpeed=.2,this.controls=i}else M.install({THREE:h}),this.cameraControls=new M(t,n)}limitPan({maxX:e=1/0,minX:t=-1/0,maxZ:s=1/0,minZ:o=-1/0,maxY:n=1/0,minY:i=-1/0}){const c=this.limitPanV||new h.Vector3,a=this.controls;if(a){const{camera:l}=this.options,d=new h.Vector3(t,i,o),m=new h.Vector3(e,n,s);this.limitPanV=c,c.copy(a.target),a.target.clamp(d,m),c.sub(a.target),l.position.sub(c)}}changeRotation({vertical:e,horizontal:t,distance:s}){const{camera:o}=this.options,n=this.controls;if(n){const i=t!=null?t:n.getAzimuthalAngle(),c=e!=null?e:n.getPolarAngle(),a=new h.Vector3;a.setFromSphericalCoords(s!=null?s:o.position.distanceTo(n.target),c,i);const l=new h.Quaternion().setFromUnitVectors(new h.Vector3(0,1,0),o.up);a.applyQuaternion(l),o.position.set(a.x+n.target.x,a.y+n.target.y,a.z+n.target.z),n.update()}}enable(){this.controls?this.controls.enabled=!0:this.cameraControls&&(this.cameraControls.enabled=!0)}disable(){this.controls?this.controls.enabled=!1:this.cameraControls&&(this.cameraControls.enabled=!1)}update(e){var t,s;(t=this.controls)==null||t.update(),(s=this.cameraControls)==null||s.update(e),this.autoRotateSpeed&&this.cameraControls&&(this.cameraControls.azimuthAngle+=this.autoRotateSpeed*e*h.MathUtils.DEG2RAD)}dispose(){var e,t;(e=this.controls)==null||e.dispose(),(t=this.cameraControls)==null||t.dispose()}}class le{constructor(e){this.event=new F.eventsExports.EventEmitter;const{renderer:t,scene:s,camera:o}=e,n=new Z.TransformControls(o,t.domElement);s.add(n),this.controls=n,this.addEvent()}get detach(){return this.controls.detach.bind(this.controls)}get attach(){return this.controls.attach.bind(this.controls)}addEvent(){let e=null,t=null,s=null;const o=this.controls;o.addEventListener("change",()=>{const n=o.object;n!==void 0&&this.event.emit("change",n)}),o.addEventListener("mouseDown",()=>{const n=o.object;e=n.position.clone(),t=n.rotation.clone(),s=n.scale.clone(),this.event.emit("mouseDown",n)}),o.addEventListener("mouseUp",()=>{const n=o.object;if(n!==void 0)switch(o.getMode()){case"translate":e.equals(n.position)||this.event.emit("translate",n,n.position,e);break;case"rotate":t.equals(n.rotation)||this.event.emit("rotate",n,n.rotation,t);break;case"scale":s.equals(n.scale)||this.event.emit("scale",n,n.scale,s);break}this.event.emit("mouseUp")})}dispose(){var e;this.event.removeAllListeners(),(e=this.controls)==null||e.dispose()}}const L={zIndex:"auto"};class de{constructor(e){this.container=e}addRenderer(e,t){const s=t.container||this.container,o=s.offsetWidth,n=s.offsetHeight,i=e==="css2d"?new K.CSS2DRenderer:new J.CSS3DRenderer;i.domElement.style.position="absolute",i.domElement.style.top="0",i.domElement.style.pointerEvents="none",i.domElement.style.zIndex=t.zIndex,i.setSize(o,n),s.appendChild(i.domElement),e==="css2d"?this.css2Drenderer=i:e==="css3d"&&(this.css3Drenderer=i)}setSize(e,t){var s,o;(s=this.css2Drenderer)==null||s.setSize(e,t),(o=this.css3Drenderer)==null||o.setSize(e,t)}render(e,t){var s,o;(s=this.css2Drenderer)==null||s.render(e,t),(o=this.css3Drenderer)==null||o.render(e,t)}dispose(){this.css2Drenderer=void 0,this.css3Drenderer=void 0}}const j=["encodings_fragment","colorspace_fragment"];class he extends y.ShaderMaterial{constructor(){super({uniforms:{inputBuffer:new y.Uniform(null),ratio:new y.Uniform(1)},fragmentShader:`
2
2
  uniform sampler2D inputBuffer;
3
3
  uniform float ratio;
4
4
  varying vec2 vUv;
@@ -15,4 +15,4 @@
15
15
  vUv = position.xy * 0.5 + 0.5;
16
16
  gl_Position = vec4(position.xy, 1.0, 1.0);
17
17
  }
18
- `,toneMapped:!1,depthWrite:!1,depthTest:!1})}}class me extends u.Pass{constructor(){super("CrossFadePass"),this.fullscreenMaterial=new he}render(e,t,s){const o=this.fullscreenMaterial;o.uniforms.inputBuffer.value=t.texture,e.setRenderTarget(this.renderToScreen?null:s),e.render(this.scene,this.camera)}}const fe={luminancePass:!1,luminanceThreshold:.4,luminanceSmoothing:.3,mipmapBlur:!0,intensity:3,blendFunction:u.BlendFunction.ADD,ignoreBackground:!0},ue={mode:u.ToneMappingMode.REINHARD2_ADAPTIVE,resolution:256,whitePoint:16,middleGrey:.6,minLuminance:.01,averageLuminance:.01,adaptationRate:1};class pe{constructor(e){this.active=!0,this.options=e;const{renderer:t,scene:s,camera:o,composerParams:n}=e,{multisampling:i,frameBufferType:c}=n,{maxSamples:a}=t.capabilities,l=new u.EffectComposer(t,{multisampling:Math.min(i,a),frameBufferType:c});l.addPass(new u.RenderPass(s,o)),this.finalComposer=l,this.renderer=t,this.scene=s,this.camera=o}addCopyPass(){const e=new u.CopyPass;e.renderToScreen=!0,this.finalComposer.addPass(e),this.copyPass=e}addCrossFadePass(){const e=new me;this.finalComposer.addPass(e),this.crossFadePass=e}addFXAAPass(){const{camera:e}=this,t=new u.FXAAEffect({blendFunction:u.BlendFunction.NORMAL}),s=new u.EffectPass(e,t);this.finalComposer.addPass(s),this.fxaaPass=s}addToneMappingPass(e){const{camera:t}=this,s=new u.ToneMappingEffect(g({},e));this.toneMappingEffect=s;const o=new u.EffectPass(t,s);this.finalComposer.addPass(o),this.toneMappingPass=o}addToneMappingGui(e){if(!this.toneMappingEffect)return;new x({toneMapping:{blendFunction:{value:this.toneMappingEffect.mode,items:u.ToneMappingMode,onChange:s=>{this.toneMappingEffect.mode=Number(s)}},exposure:{min:0,max:2,value:this.renderer.toneMappingExposure,step:.001,onChange:s=>{this.renderer.toneMappingExposure=s}}},"Reinhard (Modified)":{whitePoint:{min:2,max:32,step:.001,target:()=>this.toneMappingEffect},middleGrey:{min:0,max:1,step:1e-4,target:()=>this.toneMappingEffect},averageLuminance:{min:1e-4,max:1,step:1e-4,target:()=>this.toneMappingEffect}}}).showGui(e)}addBloomPass(e){const{camera:t,scene:s}=this,o=new u.SelectiveBloomEffect(s,t,g({},e));o.luminancePass.enabled=!1,o.luminancePass.enabled=e.luminancePass;const n=new u.EffectPass(t,o);n.enabled=!1,this.finalComposer.addPass(n),this.bloomPass=n,this.bloomEffect=o}addBloomGui(e){if(!this.bloomEffect)return;new x({bloom:{intensity:{min:0,max:10,step:.01,target:()=>this.bloomEffect},radius:{min:0,max:1,step:.001,target:()=>this.bloomEffect.mipmapBlurPass},blendFunction:{value:this.bloomEffect.blendMode.blendFunction,items:u.BlendFunction,onChange:s=>{this.bloomEffect.blendMode.blendFunction=Number(s)}},ignoreBackground:{value:this.bloomEffect.ignoreBackground,onChange:s=>{this.bloomEffect.ignoreBackground=s}}},bloomLuminanceFilter:{enabled:{value:this.bloomEffect.luminancePass.enabled,onChange:s=>{this.bloomEffect.luminancePass.enabled=s}},threshold:{min:0,max:1,step:.01,target:()=>this.bloomEffect.luminanceMaterial},smoothing:{min:0,max:1,step:.01,target:()=>this.bloomEffect.luminanceMaterial}}}).showGui(e)}toggleBloomSelection(e,t){if(!this.bloomEffect||!this.bloomPass){console.warn("err:pencil.options.bloom");return}e?t===!0?this.bloomEffect.selection.add(e):t===!1?this.bloomEffect.selection.delete(e):this.bloomEffect.selection.toggle(e):this.bloomEffect.selection.clear(),this.bloomPass.enabled=!!this.bloomEffect.selection.size}getSize(){const{renderer:e}=this.options;return e.getSize(new h.Vector2)}enable(){this.active||(this.active=!0)}disable(){this.active&&(this.active=!1)}setSize(e,t){this.finalComposer.setSize(e,t)}render(){this.active&&this.finalComposer.render()}dispose(){this.finalComposer.dispose()}}const ge=()=>{try{const r=document.createElement("canvas");return!!(window.WebGL2RenderingContext&&r.getContext("webgl2"))}catch(r){return!1}},E=!1,q=ge()!==!1,G=class{constructor(r,e){this.raycaster=new h.Raycaster,this.installPlugins=new Map,this.event=new F.eventsExports.EventEmitter,this.clock=new h.Clock,this.userData={},this.options=X(G.options,r,{isMergeableObject:ee.isPlainObject}),this.event.setMaxListeners(1/0);const{container:t,stats:s,gui:o,resizeObserver:n}=this.options;if(this.options.control==="cameraControls"&&(this.options.control=!0),o){const i=new $;i.open(!1),this.gui=i}if(s){const i=new Q;i.showPanel(0),i.dom.style.position="absolute",t.appendChild(i.dom),this.stats=i}this.init(),this.initComposer(),this.initCSSRenderer(),this.initControls(),n&&this.initResizeObserver(),this.clock.getDelta(),this.clock.getElapsedTime(),e&&(Array.isArray(e)||(e=[e]),e.forEach(i=>{Array.isArray(i)||(i=[i]),this.use(i[0],i[1])}))}get renderer(){return this.rendererController.renderer}get control(){var r;return(r=this.controlsController)==null?void 0:r.controls}get cameraControls(){var r;return(r=this.controlsController)==null?void 0:r.cameraControls}get camera(){return this.cameraController.camera}get scene(){return this.sceneController.scene}use(r,...e){this.installPlugins.has(r.pluginName)?console.log("plugin already installed"):typeof r.install=="function"&&(r.install(this,...e),this.installPlugins.set(r.pluginName,r))}init(){const{container:r,isdev:e,axesHelper:t,renderer:s,scene:o,camera:n,control:i}=this.options,{width:c,height:a}=this.getSize(),l=new re({isdev:e,width:c,height:a,cameraParams:n,cameraControls:i===!0});this.gui&&l.setGui(this.gui);const d=l.camera,m=new ae({camera:d,sceneParams:o}),p=m.scene,C=new oe({width:c,height:a,scene:p,camera:d,isdev:e,rendererParams:R(g({},s),{antialias:!1})}),w=C.renderer;t&&m.addAxesHelper(),this.sceneController=m,this.rendererController=C,this.cameraController=l,r.appendChild(w.domElement)}initComposer(){const{bloom:r,bloomParams:e,toneMapping:t,toneMappingParams:s,crossOpacity:o,renderer:n,multisampling:i,frameBufferType:c,passes:a}=this.options;let{antialias:l}=n;l==="msaa"&&!q&&(l=!1,console.warn("MSAA is not supported on this browser"));const d=new pe({renderer:this.renderer,scene:this.scene,camera:this.camera,composerParams:{multisampling:l==="msaa"?i:0,frameBufferType:t?h.HalfFloatType:c,encoding:n.outputEncoding}});this.composerController=d,r&&(d.addBloomPass(e),this.gui&&d.addBloomGui(this.gui)),t&&(d.addToneMappingPass(s),this.gui&&d.addToneMappingGui(this.gui)),l==="fxaa"&&d.addFXAAPass(),o&&d.addCrossFadePass(),a&&a.forEach(m=>{d.finalComposer.addPass(m)}),d.addCopyPass()}get opacity(){const{crossFadePass:r}=this.composerController;return r?r.fullscreenMaterial.uniforms.ratio.value:1}set opacity(r){const{crossFadePass:e}=this.composerController;if(!e){console.warn("err:pencil.options.crossOpacity");return}e.fullscreenMaterial.uniforms.ratio.value=r}initCSSRenderer(){const{container:r,css2DRenderer:e,css3DRenderer:t,css2DRendererParams:s,css3DRendererParams:o}=this.options;if(e||t){const n=new de(r);e&&n.addRenderer("css2d",s),t&&n.addRenderer("css3d",o),this.cssRendererController=n}}initControls(){const{control:r,controlParams:e,transformControls:t}=this.options;if(r){const s=new ce({camera:this.camera,controlsParams:{domElement:(e==null?void 0:e.domElement)||this.renderer.domElement},customControl:typeof r=="boolean"?void 0:r});this.controlsController=s}if(t){const s=new le({camera:this.camera,renderer:this.renderer,scene:this.scene});s.event.on("mouseDown",()=>{var o;(o=this.controlsController)==null||o.disable()}),s.event.on("mouseUp",()=>{var o;(o=this.controlsController)==null||o.enable()}),this.transformController=s}}getSize(){const{container:r}=this.options;return{width:r.offsetWidth,height:r.offsetHeight}}initResizeObserver(){const{container:r}=this.options;if(this.resizeObserver)return;const e=new ResizeObserver(t=>{for(const s of t){const o=s.contentRect;this.handeleResize(o.width,o.height),this.render()}});e.observe(r),this.resizeObserver=e}handeleResize(r,e,t=!0){const{rendererController:s,cameraController:o,composerController:n,cssRendererController:i}=this;o==null||o.setSize(r,e),s==null||s.setSize(r,e),n==null||n.setSize(r,e),i==null||i.setSize(r,e),this.installPlugins.forEach(c=>{var a;(a=c.setSize)==null||a.call(c,r,e)}),t&&this.event.emit("resize",{width:r,height:e})}pick(r,e,t=!1){const{raycaster:s,options:o}=this,{container:n}=o,i=new h.Vector2,c=n.getBoundingClientRect();if(i.x=(r.clientX-c.left)/(c.right-c.left)*2-1,i.y=-((r.clientY-c.top)/(c.bottom-c.top))*2+1,this.camera&&this.scene){s.setFromCamera(i,this.camera);const a=s.intersectObjects(e||this.scene.children,t);if(a.length)return{object:a[0].object,intersects:a}}}render(){var i,c,a,l,d;const{renderer:r,scene:e,camera:t,clock:s}=this;if(!r||!e||!t||this.options.staticRender&&!this.cameraController.checkCameraChange())return;const o=s.getDelta(),n=s.getElapsedTime();B.update(),(i=this.controlsController)==null||i.update(o),this.installPlugins.forEach(m=>{var p;(p=m.update)==null||p.call(m,o,n)}),(c=this.composerController)!=null&&c.active?this.composerController.render():(a=this.rendererController)==null||a.render(),(l=this.cssRendererController)==null||l.render(e,t),(d=this.stats)==null||d.update(),this.event.emit("render",{delta:o,elapsed:n})}start(){this.renderer.setAnimationLoop(this.render.bind(this)),this.event.emit("start")}stop(){this.renderer.setAnimationLoop(null),this.event.emit("stop")}dispose(){var r,e,t,s,o,n,i,c;this.stop(),B.removeAll(),this.handeleResize(0,0),(r=this.resizeObserver)==null||r.unobserve(this.options.container),this.installPlugins.forEach(a=>{var l;(l=a.dispose)==null||l.call(a)}),(e=this.controlsController)==null||e.dispose(),(t=this.transformController)==null||t.dispose(),(s=this.cssRendererController)==null||s.dispose(),(o=this.sceneController)==null||o.dispose(),(n=this.composerController)==null||n.dispose(),(i=this.rendererController)==null||i.dispose(),this.controlsController=void 0,this.cssRendererController=void 0,(c=this.gui)==null||c.destroy(),this.event.removeAllListeners(),this.installPlugins.clear()}};let D=G;D.options={isdev:E,stats:E,gui:E,axesHelper:E,control:E,transformControls:E,resizeObserver:!0,renderer:R(g({},se),{antialias:q?"msaa":"fxaa"}),staticRender:!1,multisampling:4,frameBufferType:h.UnsignedByteType,scene:ie,camera:ne,bloom:!1,bloomParams:fe,toneMapping:!1,toneMappingParams:ue,crossOpacity:!1,css2DRenderer:!1,css2DRendererParams:g({},L),css3DRenderer:!1,css3DRendererParams:g({},L)};exports.BaseObject=te.BaseObject;exports.GUIObject=x;exports.Pencil=D;exports.default=D;
18
+ `,toneMapped:!1,depthWrite:!1,depthTest:!1})}}class me extends u.Pass{constructor(){super("CrossFadePass"),this.fullscreenMaterial=new he}render(e,t,s){const o=this.fullscreenMaterial;o.uniforms.inputBuffer.value=t.texture,e.setRenderTarget(this.renderToScreen?null:s),e.render(this.scene,this.camera)}}const fe={luminancePass:!1,luminanceThreshold:.4,luminanceSmoothing:.3,mipmapBlur:!0,intensity:3,blendFunction:u.BlendFunction.ADD,ignoreBackground:!0},ue={mode:u.ToneMappingMode.REINHARD2_ADAPTIVE,resolution:256,whitePoint:16,middleGrey:.6,minLuminance:.01,averageLuminance:.01,adaptationRate:1};class pe{constructor(e){this.active=!0,this.options=e;const{renderer:t,scene:s,camera:o,composerParams:n}=e,{multisampling:i,frameBufferType:c}=n,{maxSamples:a}=t.capabilities,l=new u.EffectComposer(t,{multisampling:Math.min(i,a),frameBufferType:c});l.addPass(new u.RenderPass(s,o)),this.finalComposer=l,this.renderer=t,this.scene=s,this.camera=o}addCopyPass(){const e=new u.CopyPass;e.renderToScreen=!0,this.finalComposer.addPass(e),this.copyPass=e}addCrossFadePass(){const e=new me;this.finalComposer.addPass(e),this.crossFadePass=e}addFXAAPass(){const{camera:e}=this,t=new u.FXAAEffect({blendFunction:u.BlendFunction.NORMAL}),s=new u.EffectPass(e,t);this.finalComposer.addPass(s),this.fxaaPass=s}addToneMappingPass(e){const{camera:t}=this,s=new u.ToneMappingEffect(g({},e));this.toneMappingEffect=s;const o=new u.EffectPass(t,s);this.finalComposer.addPass(o),this.toneMappingPass=o}addToneMappingGui(e){if(!this.toneMappingEffect)return;new x({toneMapping:{blendFunction:{value:this.toneMappingEffect.mode,items:u.ToneMappingMode,onChange:s=>{this.toneMappingEffect.mode=Number(s)}},exposure:{min:0,max:2,value:this.renderer.toneMappingExposure,step:.001,onChange:s=>{this.renderer.toneMappingExposure=s}}},"Reinhard (Modified)":{whitePoint:{min:2,max:32,step:.001,target:()=>this.toneMappingEffect},middleGrey:{min:0,max:1,step:1e-4,target:()=>this.toneMappingEffect},averageLuminance:{min:1e-4,max:1,step:1e-4,target:()=>this.toneMappingEffect}}}).showGui(e)}addBloomPass(e){const{camera:t,scene:s}=this,o=new u.SelectiveBloomEffect(s,t,g({},e));e.ignoreBackground&&(o.ignoreBackground=e.ignoreBackground),o.luminancePass.enabled=!1,o.luminancePass.enabled=e.luminancePass;const n=new u.EffectPass(t,o);n.enabled=!1,this.finalComposer.addPass(n),this.bloomPass=n,this.bloomEffect=o}addBloomGui(e){if(!this.bloomEffect)return;new x({bloom:{intensity:{min:0,max:10,step:.01,target:()=>this.bloomEffect},radius:{min:0,max:1,step:.001,target:()=>this.bloomEffect.mipmapBlurPass},blendFunction:{value:this.bloomEffect.blendMode.blendFunction,items:u.BlendFunction,onChange:s=>{this.bloomEffect.blendMode.blendFunction=Number(s)}},ignoreBackground:{value:this.bloomEffect.ignoreBackground,onChange:s=>{this.bloomEffect.ignoreBackground=s}}},bloomLuminanceFilter:{enabled:{value:this.bloomEffect.luminancePass.enabled,onChange:s=>{this.bloomEffect.luminancePass.enabled=s}},threshold:{min:0,max:1,step:.01,target:()=>this.bloomEffect.luminanceMaterial},smoothing:{min:0,max:1,step:.01,target:()=>this.bloomEffect.luminanceMaterial}}}).showGui(e)}toggleBloomSelection(e,t){if(!this.bloomEffect||!this.bloomPass){console.warn("err:pencil.options.bloom");return}e?t===!0?this.bloomEffect.selection.add(e):t===!1?this.bloomEffect.selection.delete(e):this.bloomEffect.selection.toggle(e):this.bloomEffect.selection.clear(),this.bloomPass.enabled=!!this.bloomEffect.selection.size}getSize(){const{renderer:e}=this.options;return e.getSize(new h.Vector2)}enable(){this.active||(this.active=!0)}disable(){this.active&&(this.active=!1)}setSize(e,t){this.finalComposer.setSize(e,t)}render(){this.active&&this.finalComposer.render()}dispose(){this.finalComposer.dispose()}}const ge=()=>{try{const r=document.createElement("canvas");return!!(window.WebGL2RenderingContext&&r.getContext("webgl2"))}catch(r){return!1}},E=!1,q=ge()!==!1,G=class{constructor(r,e){this.raycaster=new h.Raycaster,this.installPlugins=new Map,this.event=new F.eventsExports.EventEmitter,this.clock=new h.Clock,this.userData={},this.options=X(G.options,r,{isMergeableObject:ee.isPlainObject}),this.event.setMaxListeners(1/0);const{container:t,stats:s,gui:o,resizeObserver:n}=this.options;if(this.options.control==="cameraControls"&&(this.options.control=!0),o){const i=new $;i.open(!1),this.gui=i}if(s){const i=new Q;i.showPanel(0),i.dom.style.position="absolute",t.appendChild(i.dom),this.stats=i}this.init(),this.initComposer(),this.initCSSRenderer(),this.initControls(),n&&this.initResizeObserver(),this.clock.getDelta(),this.clock.getElapsedTime(),e&&(Array.isArray(e)||(e=[e]),e.forEach(i=>{Array.isArray(i)||(i=[i]),this.use(i[0],i[1])}))}get renderer(){return this.rendererController.renderer}get control(){var r;return(r=this.controlsController)==null?void 0:r.controls}get cameraControls(){var r;return(r=this.controlsController)==null?void 0:r.cameraControls}get camera(){return this.cameraController.camera}get scene(){return this.sceneController.scene}use(r,...e){this.installPlugins.has(r.pluginName)?console.log("plugin already installed"):typeof r.install=="function"&&(r.install(this,...e),this.installPlugins.set(r.pluginName,r))}init(){const{container:r,isdev:e,axesHelper:t,renderer:s,scene:o,camera:n,control:i}=this.options,{width:c,height:a}=this.getSize(),l=new re({isdev:e,width:c,height:a,cameraParams:n,cameraControls:i===!0});this.gui&&l.setGui(this.gui);const d=l.camera,m=new ae({camera:d,sceneParams:o}),p=m.scene,C=new oe({width:c,height:a,scene:p,camera:d,isdev:e,rendererParams:R(g({},s),{antialias:!1})}),w=C.renderer;t&&m.addAxesHelper(),this.sceneController=m,this.rendererController=C,this.cameraController=l,r.appendChild(w.domElement)}initComposer(){const{bloom:r,bloomParams:e,toneMapping:t,toneMappingParams:s,crossOpacity:o,renderer:n,multisampling:i,frameBufferType:c,passes:a}=this.options;let{antialias:l}=n;l==="msaa"&&!q&&(l=!1,console.warn("MSAA is not supported on this browser"));const d=new pe({renderer:this.renderer,scene:this.scene,camera:this.camera,composerParams:{multisampling:l==="msaa"?i:0,frameBufferType:t?h.HalfFloatType:c,encoding:n.outputEncoding}});this.composerController=d,r&&(d.addBloomPass(e),this.gui&&d.addBloomGui(this.gui)),t&&(d.addToneMappingPass(s),this.gui&&d.addToneMappingGui(this.gui)),l==="fxaa"&&d.addFXAAPass(),o&&d.addCrossFadePass(),a&&a.forEach(m=>{d.finalComposer.addPass(m)}),d.addCopyPass()}get opacity(){const{crossFadePass:r}=this.composerController;return r?r.fullscreenMaterial.uniforms.ratio.value:1}set opacity(r){const{crossFadePass:e}=this.composerController;if(!e){console.warn("err:pencil.options.crossOpacity");return}e.fullscreenMaterial.uniforms.ratio.value=r}initCSSRenderer(){const{container:r,css2DRenderer:e,css3DRenderer:t,css2DRendererParams:s,css3DRendererParams:o}=this.options;if(e||t){const n=new de(r);e&&n.addRenderer("css2d",s),t&&n.addRenderer("css3d",o),this.cssRendererController=n}}initControls(){const{control:r,controlParams:e,transformControls:t}=this.options;if(r){const s=new ce({camera:this.camera,controlsParams:{domElement:(e==null?void 0:e.domElement)||this.renderer.domElement},customControl:typeof r=="boolean"?void 0:r});this.controlsController=s}if(t){const s=new le({camera:this.camera,renderer:this.renderer,scene:this.scene});s.event.on("mouseDown",()=>{var o;(o=this.controlsController)==null||o.disable()}),s.event.on("mouseUp",()=>{var o;(o=this.controlsController)==null||o.enable()}),this.transformController=s}}getSize(){const{container:r}=this.options;return{width:r.offsetWidth,height:r.offsetHeight}}initResizeObserver(){const{container:r}=this.options;if(this.resizeObserver)return;const e=new ResizeObserver(t=>{for(const s of t){const o=s.contentRect;this.handeleResize(o.width,o.height),this.render()}});e.observe(r),this.resizeObserver=e}handeleResize(r,e,t=!0){const{rendererController:s,cameraController:o,composerController:n,cssRendererController:i}=this;o==null||o.setSize(r,e),s==null||s.setSize(r,e),n==null||n.setSize(r,e),i==null||i.setSize(r,e),this.installPlugins.forEach(c=>{var a;(a=c.setSize)==null||a.call(c,r,e)}),t&&this.event.emit("resize",{width:r,height:e})}pick(r,e,t=!1){const{raycaster:s,options:o}=this,{container:n}=o,i=new h.Vector2,c=n.getBoundingClientRect();if(i.x=(r.clientX-c.left)/(c.right-c.left)*2-1,i.y=-((r.clientY-c.top)/(c.bottom-c.top))*2+1,this.camera&&this.scene){s.setFromCamera(i,this.camera);const a=s.intersectObjects(e||this.scene.children,t);if(a.length)return{object:a[0].object,intersects:a}}}render(){var i,c,a,l,d;const{renderer:r,scene:e,camera:t,clock:s}=this;if(!r||!e||!t||this.options.staticRender&&!this.cameraController.checkCameraChange())return;const o=s.getDelta(),n=s.getElapsedTime();z.update(),(i=this.controlsController)==null||i.update(o),this.installPlugins.forEach(m=>{var p;(p=m.update)==null||p.call(m,o,n)}),(c=this.composerController)!=null&&c.active?this.composerController.render():(a=this.rendererController)==null||a.render(),(l=this.cssRendererController)==null||l.render(e,t),(d=this.stats)==null||d.update(),this.event.emit("render",{delta:o,elapsed:n})}start(){this.renderer.setAnimationLoop(this.render.bind(this)),this.event.emit("start")}stop(){this.renderer.setAnimationLoop(null),this.event.emit("stop")}dispose(){var r,e,t,s,o,n,i,c;this.stop(),z.removeAll(),this.handeleResize(0,0),(r=this.resizeObserver)==null||r.unobserve(this.options.container),this.installPlugins.forEach(a=>{var l;(l=a.dispose)==null||l.call(a)}),(e=this.controlsController)==null||e.dispose(),(t=this.transformController)==null||t.dispose(),(s=this.cssRendererController)==null||s.dispose(),(o=this.sceneController)==null||o.dispose(),(n=this.composerController)==null||n.dispose(),(i=this.rendererController)==null||i.dispose(),this.controlsController=void 0,this.cssRendererController=void 0,(c=this.gui)==null||c.destroy(),this.event.removeAllListeners(),this.installPlugins.clear()}};let D=G;D.options={isdev:E,stats:E,gui:E,axesHelper:E,control:E,transformControls:E,resizeObserver:!0,renderer:R(g({},se),{antialias:q?"msaa":"fxaa"}),staticRender:!1,multisampling:4,frameBufferType:h.UnsignedByteType,scene:ie,camera:ne,bloom:!1,bloomParams:fe,toneMapping:!1,toneMappingParams:ue,crossOpacity:!1,css2DRenderer:!1,css2DRendererParams:g({},L),css3DRenderer:!1,css3DRendererParams:g({},L)};exports.BaseObject=te.BaseObject;exports.GUIObject=x;exports.Pencil=D;exports.default=D;
@@ -12,7 +12,7 @@ var A = (n, e, t) => e in n ? k(n, e, { enumerable: !0, configurable: !0, writab
12
12
  }, y = (n, e) => N(n, U(e));
13
13
  import * as m from "three";
14
14
  import { ShaderMaterial as _, Uniform as z, REVISION as q } from "three";
15
- import * as T from "@tweenjs/tween.js";
15
+ import * as B from "@tweenjs/tween.js";
16
16
  import { e as F } from "./events.module.js";
17
17
  import X from "deepmerge";
18
18
  import Q from "three/examples/jsm/libs/stats.module";
@@ -22,7 +22,7 @@ import { d as J } from "./disposeMesh.module.js";
22
22
  import "idb-keyval";
23
23
  import "esus-lite";
24
24
  import "d3-geo";
25
- import { m as B } from "./MeshLineMaterial.module.js";
25
+ import { m as T } from "./MeshLineMaterial.module.js";
26
26
  import x from "camera-controls";
27
27
  import { TransformControls as K } from "three/examples/jsm/controls/TransformControls";
28
28
  import { CSS3DRenderer as ee } from "three/examples/jsm/renderers/CSS3DRenderer";
@@ -243,7 +243,7 @@ class ue {
243
243
  get: (c, a) => {
244
244
  if (a === "overrideMaterial") {
245
245
  const l = Reflect.get(c, a);
246
- return this.overrideMaterial = !!l, B.forEach((d) => {
246
+ return this.overrideMaterial = !!l, T.forEach((d) => {
247
247
  this.overrideMaterial ? d.useDepth = 1 : d.useDepth = 0;
248
248
  }), null;
249
249
  }
@@ -261,7 +261,7 @@ class ue {
261
261
  var e;
262
262
  (e = this.scene) == null || e.traverse((t) => {
263
263
  J(t);
264
- }), B.length = 0;
264
+ }), T.length = 0;
265
265
  }
266
266
  }
267
267
  class ge {
@@ -538,7 +538,7 @@ class ye {
538
538
  }
539
539
  addBloomPass(e) {
540
540
  const { camera: t, scene: s } = this, o = new ce(s, t, u({}, e));
541
- o.luminancePass.enabled = !1, o.luminancePass.enabled = e.luminancePass;
541
+ e.ignoreBackground && (o.ignoreBackground = e.ignoreBackground), o.luminancePass.enabled = !1, o.luminancePass.enabled = e.luminancePass;
542
542
  const r = new R(t, o);
543
543
  r.enabled = !1, this.finalComposer.addPass(r), this.bloomPass = r, this.bloomEffect = o;
544
544
  }
@@ -848,7 +848,7 @@ const xe = () => {
848
848
  if (!n || !e || !t || this.options.staticRender && !this.cameraController.checkCameraChange())
849
849
  return;
850
850
  const o = s.getDelta(), r = s.getElapsedTime();
851
- T.update(), (i = this.controlsController) == null || i.update(o), this.installPlugins.forEach((h) => {
851
+ B.update(), (i = this.controlsController) == null || i.update(o), this.installPlugins.forEach((h) => {
852
852
  var p;
853
853
  (p = h.update) == null || p.call(h, o, r);
854
854
  }), (c = this.composerController) != null && c.active ? this.composerController.render() : (a = this.rendererController) == null || a.render(), (l = this.cssRendererController) == null || l.render(e, t), (d = this.stats) == null || d.update(), this.event.emit("render", { delta: o, elapsed: r });
@@ -861,7 +861,7 @@ const xe = () => {
861
861
  }
862
862
  dispose() {
863
863
  var n, e, t, s, o, r, i, c;
864
- this.stop(), T.removeAll(), this.handeleResize(0, 0), (n = this.resizeObserver) == null || n.unobserve(this.options.container), this.installPlugins.forEach((a) => {
864
+ this.stop(), B.removeAll(), this.handeleResize(0, 0), (n = this.resizeObserver) == null || n.unobserve(this.options.container), this.installPlugins.forEach((a) => {
865
865
  var l;
866
866
  (l = a.dispose) == null || l.call(a);
867
867
  }), (e = this.controlsController) == null || e.dispose(), (t = this.transformController) == null || t.dispose(), (s = this.cssRendererController) == null || s.dispose(), (o = this.sceneController) == null || o.dispose(), (r = this.composerController) == null || r.dispose(), (i = this.rendererController) == null || i.dispose(), this.controlsController = void 0, this.cssRendererController = void 0, (c = this.gui) == null || c.destroy(), this.event.removeAllListeners(), this.installPlugins.clear();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gl-draw",
3
- "version": "0.9.0-beta.331",
3
+ "version": "0.9.0-beta.332",
4
4
  "author": "gitplus <hstits@gmail.com>",
5
5
  "scripts": {
6
6
  "start": "bundler-dev",