@crystaldesign/diva-web-planner-react 24.10.0-beta.20 → 24.10.0-beta.21
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/build/umd/103.diva-web-planner-react.umd.min.js +2 -0
- package/build/umd/103.diva-web-planner-react.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1976.diva-web-planner-react.umd.min.js +1 -1
- package/build/umd/2684.diva-web-planner-react.umd.min.js +1 -1
- package/build/umd/319.diva-web-planner-react.umd.min.js +1 -1
- package/build/umd/399.diva-web-planner-react.umd.min.js +408 -0
- package/build/umd/399.diva-web-planner-react.umd.min.js.LICENSE.txt +92 -0
- package/build/umd/40.diva-web-planner-react.umd.min.js +1 -1
- package/build/umd/{4611.diva-web-planner-react.umd.min.js → 4131.diva-web-planner-react.umd.min.js} +2 -2
- package/build/umd/{4611.diva-web-planner-react.umd.min.js.LICENSE.txt → 4131.diva-web-planner-react.umd.min.js.LICENSE.txt} +1 -1
- package/build/umd/{3352.diva-web-planner-react.umd.min.js → 6786.diva-web-planner-react.umd.min.js} +3 -3
- package/build/umd/{3352.diva-web-planner-react.umd.min.js.LICENSE.txt → 6786.diva-web-planner-react.umd.min.js.LICENSE.txt} +1 -1
- package/build/umd/diva-web-planner-react.umd.min.js +1 -1
- package/build/umd/report.html +1 -1
- package/package.json +6 -6
- package/build/umd/81.diva-web-planner-react.umd.min.js +0 -2
- package/build/umd/81.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crystaldesign/diva-web-planner-react",
|
|
3
|
-
"version": "24.10.0-beta.
|
|
3
|
+
"version": "24.10.0-beta.21",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@testing-library/jest-dom": "^5.15.0",
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
"react-dom": "17.0.2"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@crystaldesign/content-item": "24.10.0-beta.
|
|
17
|
-
"@crystaldesign/products-component": "24.10.0-beta.
|
|
18
|
-
"@crystaldesign/real-time-viewer": "24.10.0-beta.
|
|
19
|
-
"@crystaldesign/web-planner-logic": "24.10.0-beta.
|
|
16
|
+
"@crystaldesign/content-item": "24.10.0-beta.21",
|
|
17
|
+
"@crystaldesign/products-component": "24.10.0-beta.21",
|
|
18
|
+
"@crystaldesign/real-time-viewer": "24.10.0-beta.21",
|
|
19
|
+
"@crystaldesign/web-planner-logic": "24.10.0-beta.21",
|
|
20
20
|
"@google/model-viewer": "3.4.0",
|
|
21
21
|
"@react-google-maps/api": "2.7.0",
|
|
22
22
|
"@types/three": "^0.160.0",
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
},
|
|
48
48
|
"types": "./build/types/web-planner-react/src/index.d.ts",
|
|
49
49
|
"module": "build/esm/index.js",
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "683cfe2f8a725e0394371980b9fc0f5f492d2d27"
|
|
51
51
|
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 81.diva-web-planner-react.umd.min.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunkCrystaldesignDivaWebPlannerReact=self.webpackChunkCrystaldesignDivaWebPlannerReact||[]).push([[81],{60081:(e,t,i)=>{i.r(t),i.d(t,{default:()=>P});var n=i(88501),r=i(8005),s=i(13587),a=i(62436),o=i(14488),h={uniforms:{tDiffuse:{value:null},opacity:{value:1},backgroundImg:{value:null}},vertexShader:["varying vec2 vUv;","void main() {","\tvUv = uv;","\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join("\n"),fragmentShader:["uniform float opacity;","uniform sampler2D tDiffuse;","uniform sampler2D backgroundImg;","varying vec2 vUv;","void main() {","\tvec4 texelForground = texture2D( tDiffuse, vUv );"," float brightness = 0.34 * texelForground.x + 0.5 *texelForground.y + 0.16 * texelForground.z; ","\tvec4 texelBackground = texture2D( backgroundImg, vUv );"," if( texelForground.w < 0.001){"," gl_FragColor = vec4(0, 0, 0, 0.0);"," }"," else if( texelBackground.x < 0.3 ){"," gl_FragColor = vec4(brightness,brightness,brightness, texelForground.w)* 0.8;"," }"," else {"," gl_FragColor = (1.0 - opacity) * vec4(brightness,brightness,brightness,texelForground.w);"," }","}"].join("\n")},d=i(71799);const l={name:"CopyShader",uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:"\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvUv = uv;\n\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\t\t}",fragmentShader:"\n\n\t\tuniform float opacity;\n\n\t\tuniform sampler2D tDiffuse;\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvec4 texel = texture2D( tDiffuse, vUv );\n\t\t\tgl_FragColor = opacity * texel;\n\n\n\t\t}"};var c=i(93e3);class Pass{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){c.error("THREE.Pass: .render() must be implemented in derived pass.")}dispose(){}}const u=new d.qUd(-1,1,1,-1,0,1);class FullscreenTriangleGeometry extends d.LoY{constructor(){super(),this.setAttribute("position",new d.qtW([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute("uv",new d.qtW([0,2,0,0,2,0],2))}}const g=new FullscreenTriangleGeometry;class FullScreenQuad{constructor(e){this._mesh=new d.eaF(g,e)}dispose(){this._mesh.geometry.dispose()}render(e){e.render(this._mesh,u)}get material(){return this._mesh.material}set material(e){this._mesh.material=e}}class ShaderPass extends Pass{constructor(e,t){super(),this.textureID=void 0!==t?t:"tDiffuse",e instanceof d.BKk?(this.uniforms=e.uniforms,this.material=e):e&&(this.uniforms=d.LlO.clone(e.uniforms),this.material=new d.BKk({name:void 0!==e.name?e.name:"unspecified",defines:Object.assign({},e.defines),uniforms:this.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader})),this.fsQuad=new FullScreenQuad(this.material)}render(e,t,i){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=i.texture),this.fsQuad.material=this.material,this.renderToScreen?(e.setRenderTarget(null),this.fsQuad.render(e)):(e.setRenderTarget(t),this.clear&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),this.fsQuad.render(e))}dispose(){this.material.dispose(),this.fsQuad.dispose()}}class MaskPass extends Pass{constructor(e,t){super(),this.scene=e,this.camera=t,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(e,t,i){const n=e.getContext(),r=e.state;let s,a;r.buffers.color.setMask(!1),r.buffers.depth.setMask(!1),r.buffers.color.setLocked(!0),r.buffers.depth.setLocked(!0),this.inverse?(s=0,a=1):(s=1,a=0),r.buffers.stencil.setTest(!0),r.buffers.stencil.setOp(n.REPLACE,n.REPLACE,n.REPLACE),r.buffers.stencil.setFunc(n.ALWAYS,s,4294967295),r.buffers.stencil.setClear(a),r.buffers.stencil.setLocked(!0),e.setRenderTarget(i),this.clear&&e.clear(),e.render(this.scene,this.camera),e.setRenderTarget(t),this.clear&&e.clear(),e.render(this.scene,this.camera),r.buffers.color.setLocked(!1),r.buffers.depth.setLocked(!1),r.buffers.color.setMask(!0),r.buffers.depth.setMask(!0),r.buffers.stencil.setLocked(!1),r.buffers.stencil.setFunc(n.EQUAL,1,4294967295),r.buffers.stencil.setOp(n.KEEP,n.KEEP,n.KEEP),r.buffers.stencil.setLocked(!0)}}class ClearMaskPass extends Pass{constructor(){super(),this.needsSwap=!1}render(e){e.state.buffers.stencil.setLocked(!1),e.state.buffers.stencil.setTest(!1)}}class EffectComposer{constructor(e,t){if(this.renderer=e,this._pixelRatio=e.getPixelRatio(),void 0===t){const i=e.getSize(new d.I9Y);this._width=i.width,this._height=i.height,(t=new d.nWS(this._width*this._pixelRatio,this._height*this._pixelRatio,{type:d.ix0})).texture.name="EffectComposer.rt1"}else this._width=t.width,this._height=t.height;this.renderTarget1=t,this.renderTarget2=t.clone(),this.renderTarget2.texture.name="EffectComposer.rt2",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],this.copyPass=new ShaderPass(l),this.copyPass.material.blending=d.XIg,this.clock=new d.zD7}swapBuffers(){const e=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=e}addPass(e){this.passes.push(e),e.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(e,t){this.passes.splice(t,0,e),e.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(e){const t=this.passes.indexOf(e);-1!==t&&this.passes.splice(t,1)}isLastEnabledPass(e){for(let t=e+1;t<this.passes.length;t++)if(this.passes[t].enabled)return!1;return!0}render(e){void 0===e&&(e=this.clock.getDelta());const t=this.renderer.getRenderTarget();let i=!1;for(let t=0,n=this.passes.length;t<n;t++){const n=this.passes[t];if(!1!==n.enabled){if(n.renderToScreen=this.renderToScreen&&this.isLastEnabledPass(t),n.render(this.renderer,this.writeBuffer,this.readBuffer,e,i),n.needsSwap){if(i){const t=this.renderer.getContext(),i=this.renderer.state.buffers.stencil;i.setFunc(t.NOTEQUAL,1,4294967295),this.copyPass.render(this.renderer,this.writeBuffer,this.readBuffer,e),i.setFunc(t.EQUAL,1,4294967295)}this.swapBuffers()}void 0!==MaskPass&&(n instanceof MaskPass?i=!0:n instanceof ClearMaskPass&&(i=!1))}}this.renderer.setRenderTarget(t)}reset(e){if(void 0===e){const t=this.renderer.getSize(new d.I9Y);this._pixelRatio=this.renderer.getPixelRatio(),this._width=t.width,this._height=t.height,(e=this.renderTarget1.clone()).setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}this.renderTarget1.dispose(),this.renderTarget2.dispose(),this.renderTarget1=e,this.renderTarget2=e.clone(),this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2}setSize(e,t){this._width=e,this._height=t;const i=this._width*this._pixelRatio,n=this._height*this._pixelRatio;this.renderTarget1.setSize(i,n),this.renderTarget2.setSize(i,n);for(let e=0;e<this.passes.length;e++)this.passes[e].setSize(i,n)}setPixelRatio(e){this._pixelRatio=e,this.setSize(this._width,this._height)}dispose(){this.renderTarget1.dispose(),this.renderTarget2.dispose(),this.copyPass.dispose()}}class RenderPass extends Pass{constructor(e,t,i=null,n=null,r=null){super(),this.scene=e,this.camera=t,this.overrideMaterial=i,this.clearColor=n,this.clearAlpha=r,this.clear=!0,this.clearDepth=!1,this.needsSwap=!1,this._oldClearColor=new d.Q1f}render(e,t,i){const n=e.autoClear;let r,s;e.autoClear=!1,null!==this.overrideMaterial&&(s=this.scene.overrideMaterial,this.scene.overrideMaterial=this.overrideMaterial),null!==this.clearColor&&(e.getClearColor(this._oldClearColor),e.setClearColor(this.clearColor)),null!==this.clearAlpha&&(r=e.getClearAlpha(),e.setClearAlpha(this.clearAlpha)),1==this.clearDepth&&e.clearDepth(),e.setRenderTarget(this.renderToScreen?null:i),!0===this.clear&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),e.render(this.scene,this.camera),null!==this.clearColor&&e.setClearColor(this._oldClearColor),null!==this.clearAlpha&&e.setClearAlpha(r),null!==this.overrideMaterial&&(this.scene.overrideMaterial=s),e.autoClear=n}}var m=i(78669);class Vector2{constructor(e=0,t=0){Vector2.prototype.isVector2=!0,this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){const t=this.x,i=this.y,n=e.elements;return this.x=n[0]*t+n[3]*i+n[6],this.y=n[1]*t+n[4]*i+n[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this}clampLength(e,t){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(e,Math.min(t,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){const t=Math.sqrt(this.lengthSq()*e.lengthSq());if(0===t)return Math.PI/2;const i=this.dot(e)/t;return Math.acos(m.qE(i,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,i=this.y-e.y;return t*t+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,i){return this.x=e.x+(t.x-e.x)*i,this.y=e.y+(t.y-e.y)*i,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){const i=Math.cos(t),n=Math.sin(t),r=this.x-e.x,s=this.y-e.y;return this.x=r*i-s*n+e.x,this.y=r*n+s*i+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}var f=(0,o.getLogger)("Planner","Planner3DGrid"),p=function(){return(0,r.A)((function Planner3DGrid(e,t){var i=this;(0,n.A)(this,Planner3DGrid),(0,s.A)(this,"autoDockingDistance",40),(0,s.A)(this,"threeContainer",void 0),(0,s.A)(this,"doShow3DGrid",!1),(0,s.A)(this,"updatePlannerTrans",void 0),(0,s.A)(this,"clearSelectionFrom3DGrid",void 0),(0,s.A)(this,"getAllPlannedElements",void 0),(0,s.A)(this,"groundPlane",void 0),(0,s.A)(this,"camera",void 0),(0,s.A)(this,"renderer",void 0),(0,s.A)(this,"scene",void 0),(0,s.A)(this,"sceneTree",void 0),(0,s.A)(this,"backgroundTex",void 0),(0,s.A)(this,"backGroundTexChanged",!1),(0,s.A)(this,"canvasWidth",void 0),(0,s.A)(this,"canvasHeight",void 0),(0,s.A)(this,"moveIconPerspective",void 0),(0,s.A)(this,"rotateIconPerspective",void 0),(0,s.A)(this,"rotationCenter",void 0),(0,s.A)(this,"isTransforming",!1),(0,s.A)(this,"transformWorldPosLastFrame",void 0),(0,s.A)(this,"curSelectedElement",void 0),(0,s.A)(this,"blenderPass",null),(0,s.A)(this,"composer",null),(0,s.A)(this,"onMouseUpClearSelection",(function(e){i.clearSelectionFrom3DGrid(),i.threeContainer.removeEventListener("mouseup",i.onMouseUpClearSelection)})),(0,s.A)(this,"getIntersectsGroundPlane",(function(e,t){if(i.camera){var n=new d.tBo,r=new d.Pq0;return e=e/i.canvasWidth*2-1,t=-t/i.canvasHeight*2+1,r.set(e,t,.5),n.setFromCamera(new d.I9Y(r.x,r.y),i.camera),n.intersectObject(i.groundPlane,!0)}})),(0,s.A)(this,"startMove",(function(e,t){i.isTransforming=!0;var n=i.getAllPlannedElements();n.has(e)&&(i.clearSceneTree(),n.forEach((function(e,t){for(var n=0;n<e.length;n++)i.updatePlannerElement(e[n])})),f.debug("Start transforming","Planner3DGrid"),i.updatePlannerTrans(e,t,new a.Pq(0,0,0),0,5,"START",i.autoDockingDistance))})),(0,s.A)(this,"stopMove",(function(e,t){f.debug("Stop transforming","Planner3DGrid"),i.isTransforming=!1,i.transformWorldPosLastFrame=void 0,null!=i.curSelectedElement&&i.updatePlannerTrans(e,t,new a.Pq(0,0,0),0,5,"END",i.autoDockingDistance)})),(0,s.A)(this,"startRotation",(function(e,t){i.isTransforming=!0;var n=i.getAllPlannedElements();n.has(e)&&(i.clearSceneTree(),n.forEach((function(e,t){for(var n=0;n<e.length;n++)i.updatePlannerElement(e[n])})),i.rotationCenter=void 0,i.updatePlannerTrans(e,t,new a.Pq(0,0,0),0,5,"START",i.autoDockingDistance))})),(0,s.A)(this,"stopRotation",(function(e,t){i.isTransforming=!1,i.rotationCenter=void 0,i.updatePlannerTrans(e,t,new a.Pq(0,0,0),0,5,"END",i.autoDockingDistance)})),(0,s.A)(this,"handleTranslation",(function(e,t,n){var r=i.getIntersectsGroundPlane(n.x,n.y);if(r.length>0){var s,o=new a.I9(r[0].point.x,r[0].point.z);if(f.debug("MOVE TO WORLD POS "+o.toString(),"Planner3DGrid"),!i.transformWorldPosLastFrame)return void(i.transformWorldPosLastFrame=o);var h=new a.I9(o.x-i.transformWorldPosLastFrame.x,o.y-i.transformWorldPosLastFrame.y),d=null===(s=i.sceneTree)||void 0===s?void 0:s.get(e).get(t);if(!d)return;d.position.x+=h.x,d.position.z+=h.y,null!=i.curSelectedElement&&i.updatePlannerTrans(i.curSelectedElement.getSetId(),i.curSelectedElement.getElementId(),new a.Pq(100*h.x,0,100*h.y),0,5,"UPDATE",i.autoDockingDistance),i.transformWorldPosLastFrame=o}})),(0,s.A)(this,"handleRotation",(function(e,t,n){var r=i.getIntersectsGroundPlane(n.x,n.y);if(r.length>0){var s,o=null===(s=i.sceneTree)||void 0===s?void 0:s.get(e).get(t);if(!o)return;var h=new a.I9(r[0].point.x,r[0].point.z);if(i.rotationCenter){var d=new a.I9(h.x-o.position.x,h.y-o.position.z),l=new a.I9(0,1),c=a.I9.angleRad(d,l);h.x<o.position.x&&(c=2*Math.PI-c);var u=o.rotation.z-c;o.rotation.z=c,null!=i.curSelectedElement&&i.updatePlannerTrans(i.curSelectedElement.getSetId(),i.curSelectedElement.getElementId(),new a.Pq(0,0,0),180*u/Math.PI,5,"UPDATE",i.autoDockingDistance)}else i.rotationCenter=h}})),(0,s.A)(this,"run",(function(){if(i.doShow3DGrid&&null!=i.renderer&&null!=i.backgroundTex){var e=i,t=i.isTransforming?30:10;setTimeout((function(){var t;null===(t=requestAnimationFrame)||void 0===t||t(e.run)}),1e3/t),i.backGroundTexChanged&&(i.backGroundTexChanged=!1,i.blenderPass.uniforms.backgroundImg.value=i.backgroundTex),i.composer.render()}})),this.getAllPlannedElements=t,this.sceneTree=new Map,this.curSelectedElement=void 0,this.threeContainer=null}),[{key:"setCallbackMethods",value:function setCallbackMethods(e,t){this.updatePlannerTrans=e,this.clearSelectionFrom3DGrid=t}},{key:"initialize",value:function initialize(e,t){if(f.debug("Initialize Planner3D Grid! ","ViewPlanner3DGrid - initialize"),this.canvasWidth=e,this.canvasHeight=t,this.threeContainer=document.getElementById("diva3dImg_3DGrid"),this.threeContainer){this.scene=new d.Z58,this.camera=new d.ubm(24,e/t,.1,1e3),this.renderer=new d.JeP({alpha:!0,antialias:!0}),this.renderer.setClearColor(0,0),this.renderer.setSize(e,t);var i=new d.bdM(100,100),n=new d.G_z({color:255,transparent:!0,opacity:0});this.groundPlane=new d.eaF(i,n),this.groundPlane.rotation.x=-Math.PI/2,this.scene.add(this.groundPlane),this.camera.position.z=-3,this.backgroundTex=new d.gPd,this.threeContainer.appendChild(this.renderer.domElement),this.doShow3DGrid=!1,this.composer=new EffectComposer(this.renderer),this.composer.addPass(new RenderPass(this.scene,this.camera)),this.blenderPass=new ShaderPass(h),this.blenderPass.uniforms.opacity.value=.92,this.blenderPass.renderToScreen=!0,this.composer.addPass(this.blenderPass)}}},{key:"destroy",value:function destroy(e){var t;this.threeContainer&&(f.debug("Destroy Planner3D Grid! ","ViewPlanner3DGrid - destroy"),this.hide3DGrid(),e.clear3DGridUI(),this.clearSceneTree(),this.hide3DGrid(),this.scene=void 0,this.sceneTree.clear(),null!==(t=this.threeContainer)&&void 0!==t&&t.firstChild&&this.threeContainer.removeChild(this.threeContainer.firstChild),this.backgroundTex=null,this.composer=null,this.blenderPass=null,this.camera=void 0,this.moveIconPerspective=null,this.rotateIconPerspective=null,this.groundPlane=null,this.renderer=void 0)}},{key:"unityRotToThreeRot",value:function unityRotToThreeRot(e){var t=new d.PTz(-e.x,e.y,e.z,-e.w),i=new d.O9p;return i.setFromQuaternion(t),i.y+=Math.PI,i.z*=-1,i}},{key:"unityPosToThreePos",value:function unityPosToThreePos(e){return new a.Pq(-e.x,e.y,e.z)}},{key:"clearSceneTree",value:function clearSceneTree(){var e=this;this.sceneTree.forEach((function(t,i){t.forEach((function(t,i){e.scene.remove(t)}))}))}},{key:"updateCamera",value:function updateCamera(e){if(this.camera){var t=this.unityPosToThreePos(e.getUnityCamPos());this.camera.rotation.copy(this.unityRotToThreeRot(e.getUnityCamRot())),this.camera.position.x=t.x,this.camera.position.y=t.y,this.camera.position.z=t.z,this.camera.updateMatrixWorld()}}},{key:"updateInteractionIcons",value:function updateInteractionIcons(e,t){var i=new a.I9(-.15,t.getDepthOLT()/100/2+.15);i=a.I9.rotateOrigin(i,t.getRotDeg());var n=new d.Pq0(t.getWorldPosCenter().x/100+i.x,0,t.getWorldPosCenter().z/100+i.y),r=a.I9.convertToVector2(this.convertWorldPosToScreenPos(n));if(null!=r){var s=new a.I9(.15,t.getDepthOLT()/100/2+.15);s=a.I9.rotateOrigin(s,t.getRotDeg());var o=new d.Pq0(t.getWorldPosCenter().x/100+s.x,0,t.getWorldPosCenter().z/100+s.y),h=a.I9.convertToVector2(this.convertWorldPosToScreenPos(o));if(null!=h){var l=new a.I9((r.x+(null==h?void 0:h.x))/2,(r.y+h.y)/2),c=a.I9.getDirection(r,l),u=a.I9.getDirection(h,l),g=a.I9.add(a.I9.mulNum(a.I9.normalize(c),32),l);g.interpretation="pixel";var m=a.I9.add(a.I9.mulNum(a.I9.normalize(u),32),l);m.interpretation="pixel",e.addMove3DGrid(t.getSetId(),t.getElementId(),g,this.startMove,this.handleTranslation,this.stopMove),e.addRot3DGrid(t.getSetId(),t.getElementId(),m,this.startRotation,this.handleRotation,this.stopRotation)}}}},{key:"updatePlannerElement",value:function updatePlannerElement(e){if(e.hasSvgDataOLTBase64()&&this.renderer&&this.scene){var t=(new d.Tap).load(e.getSvgDataOLTBase64());t.wrapS=d.GJx,t.wrapT=d.GJx,t.generateMipmaps=!0,t.anisotropy=this.renderer.capabilities.getMaxAnisotropy();var i=e.getWidthOLT()/100,n=e.getDepthOLT()/100,r=new d.bdM(i,n),s=new d.V9B({map:t}),a=new d.eaF(r,s);a.rotation.z=-e.getRotRad(),a.rotation.x=-Math.PI/2,a.position.x=e.getWorldPosCenter().x/100,a.position.y=e.getLayer()/500,a.position.z=e.getWorldPosCenter().z/100,this.sceneTree.has(e.getSetId())||this.sceneTree.set(e.getSetId(),new Map),this.sceneTree.get(e.getSetId()).set(e.getElementId(),a),this.scene.add(a)}}},{key:"updateScene",value:function updateScene(e,t,i,n,r){var s=this;(this.renderer||this.camera)&&(e.clear3DGridUI(),this.show3DGrid(),this.clearSceneTree(),this.curSelectedElement=i,this.initBackgroundScene(t),this.canvasWidth=r.imgWidth,this.canvasHeight=r.imgHeight,(this.renderer&&this.renderer.getSize(new d.I9Y).x!=r.imgWidth||this.renderer.getSize(new d.I9Y).y!=r.imgHeight||t.getUnityFOV()!=this.camera.fov)&&(this.camera.fov=t.getUnityFOV(),this.camera.aspect=r.imgWidth/r.imgHeight,this.camera.updateProjectionMatrix(),this.renderer.setSize(r.imgWidth,r.imgHeight)),this.updateCamera(t),n.forEach((function(t,n){for(var r=0;r<t.length;r++)null!=i&&t[r].getElementId()==i.getElementId()&&s.updateInteractionIcons(e,t[r])})))}},{key:"initBackgroundScene",value:function initBackgroundScene(e){if(!e.HasLayerMaskThreeTexture){var t=new d.Tap;e.LayerMaskThreeTexture=t.load(e.getLayerMaskForSrc())}this.backgroundTex=e.LayerMaskThreeTexture,this.backGroundTexChanged=!0}},{key:"isInTrasnformMode",value:function isInTrasnformMode(){return this.isTransforming}},{key:"show3DGrid",value:function show3DGrid(){this.doShow3DGrid||(this.doShow3DGrid=!0,this.run())}},{key:"hide3DGrid",value:function hide3DGrid(){this.renderer&&this.doShow3DGrid&&(this.renderer.clear(),this.doShow3DGrid=!1)}},{key:"updateUI",value:function updateUI(e,t){e.clear3DGridUI(),this.curSelectedElement=t,this.show3DGrid(),this.updateInteractionIcons(e,t)}},{key:"getPositionOfCanvasContainer",value:function getPositionOfCanvasContainer(){return new a.I9(0,0)}},{key:"convertWorldPosToScreenPos",value:function convertWorldPosToScreenPos(e){var t=e.clone();t.project(this.camera);var i=this.canvasWidth/2,n=this.canvasHeight/2;return t.x=t.x*i+i,t.y=-t.y*n+n,new Vector2(t.x,t.y)}}])}(),v=function(){return(0,r.A)((function Planner3DImageUI(e,t,i){(0,n.A)(this,Planner3DImageUI),(0,s.A)(this,"uiHTMLContainer",void 0),(0,s.A)(this,"classUI","wc3DImageUI"),(0,s.A)(this,"getConfiguratorState",void 0),(0,s.A)(this,"getPlannerViewConfig",void 0),(0,s.A)(this,"plannerPaletteViewInfo",void 0),this.getConfiguratorState=e,this.getPlannerViewConfig=t,this.plannerPaletteViewInfo=i}),[{key:"checkCollisionRectRect",value:function checkCollisionRectRect(e,t){return e.screenPos.x<t.screenPos.x+t.width&&e.screenPos.x+e.width>t.screenPos.x&&e.screenPos.y<t.screenPos.y+t.height&&e.screenPos.y+e.height>t.screenPos.y}},{key:"addDelIcon",value:function addDelIcon(e,t,i,n){i>100||i<0||n>100||n<0||e.addTrashIconUI(t.getSetId(),t.getElementId(),t.getRotDeg(),new a.I9(i,n,"percentage"),"3D")}},{key:"addDimensionInfo",value:function addDimensionInfo(e,t,i,n){var r=n.getAlternateRenderInfo();if(!n.getAlternateRenderingsExist()||null!=r){var s=i.parentElementId+"."+i.shelfGridId+"."+i.shelfRasterHeight,a=n.getLeftBottomFrontUIPos(t,s);if(a&&!(a.x<0||a.x>100||a.y<0||a.y>100)){var o=Math.round(n.getDistanceToGround(t,s));-1!=o&&e.addDistanceFromGround(t,i.parentElementId,o,a)}}}},{key:"addPosNrUI",value:function addPosNrUI(e,t,i,n,r,s){i<0&&(i=0),i>100&&(i=100),n<0&&(n=0),n>100&&(n=100),e.addPosNrUI(t.getSetId(),t.getElementId(),t.getIsDockedAccessoire(),new a.I9(i,n,"percentage"),t.getRotDeg(),1,t.getPosNrWithAccessoirePosNr(),r?"selected":s?"selectable":"unselectable","3D")}},{key:"addBoxPlannerDockingPoints",value:function addBoxPlannerDockingPoints(e,t,i){var n=!1,r=t.getFreeDockingPointByTypeAndNumber("AVO",1);null==r||r.IsDisabled||(n=!0);var s=i.getBoxPlannerCornerUIPos(t.getSetId(),t.getElementId(),"LEFTCENTER");s&&e.addCopy(t.getSetId(),t.getElementId(),"BoxCopyLeft",s,"3D");var a=i.getBoxPlannerCornerUIPos(t.getSetId(),t.getElementId(),"RIGHTCENTER");if(a&&e.addCopy(t.getSetId(),t.getElementId(),"BoxCopyRight",a,"3D"),n){var o=i.getBoxPlannerCornerUIPos(t.getSetId(),t.getElementId(),"TOPCENTER");o&&e.addCopy(t.getSetId(),t.getElementId(),"BoxCopyTop",o,"3D")}}},{key:"addCopyIcon",value:function addCopyIcon(e,t){e.addCopy(t.getSetId(),t.getElementId(),"CopyElement",new a.I9(0,0),"3D")}},{key:"addAccDockingPoints",value:function addAccDockingPoints(e,t,i,n){for(var r=t.getAllDockingPoints(),s=0;s<r.length;s++){var o,h=r[s];if((null===(o=this.plannerPaletteViewInfo)||void 0===o||null===(o=o.plannerConfiguration.hideAVButtons)||void 0===o||!o.includes(h.Type))&&(("AVO"==h.Type||"AVC"==h.Type||"AVU"==h.Type)&&null==n||n===h.Type))for(var d=0;d<i.length;d++)h.Name==i[d].N&&e.addDP(t.getSetId(),t.getElementId(),h.DpId,"ACC",h.IsDocking?"DOCKING":"NOT_DOCKING",h.OnElementId,t.getRotDeg(),0,new a.I9(i[d].x,i[d].y,"percentage"),"3D")}}},{key:"addOutlinePolygon",value:function addOutlinePolygon(e,t,i,n,r){var s=t.getOutlinePolygonForSVG(i.getSetId(),i.getElementId(),r);s&&e.addOutline3D(i.getSetId(),i.getElementId(),s.points,s.avgCamDist,n,"BOX"==i.getPlannerType())}},{key:"initialize",value:function initialize(e){this.uiHTMLContainer||(this.uiHTMLContainer=document.createElement("div"),this.uiHTMLContainer.classList.add(this.classUI),e.appendChild(this.uiHTMLContainer))}},{key:"isParentSelectedRecursive",value:function isParentSelectedRecursive(e,t){for(var i=0;i<t.length;i++){for(var n=t[i].getCurrentAccessorires(),r=0;r<n.length;r++)if(n[r].getElementId()==e.getElementId())return!0;t=t.concat(n)}return!1}},{key:"updateUI",value:function updateUI(e,t,i,n,r,s,a,o,h){var d=this;e.clear2D3DViewerUI(),t.forEach((function(t,i){for(var o=0;o<t.length;o++){var l=t[o];if(n.hasUIInfosOfElement(l.getSetId(),l.getElementId())){var c=!1,u=a;if(r.has(i))c=r.get(i).map((function(e){return e.getElementId()})).includes(l.getElementId());if(!c&&!a&&s.has(i))for(var g=s.get(i),m=0;m<g.length;m++)if(l.getElementId()==g[m].getElementId()){u=!0;break}switch(d.addOutlinePolygon(e,n,l,c?"selected":u?"selectable":"unselectable",h),l.getPlannerType()){case"STD":var f=n.getLeftTopBackUIPos(l.getSetId(),l.getElementId());if(f&&d.addPosNrUI(e,l,f.x,f.y,c,u),c&&["PLANNER","PRODUCTS","PROMOTED"].includes(d.getConfiguratorState())){l.getIsDockedAccessoire()?d.addAccDockingPoints(e,l,n.getAllDockingPoints(l.getSetId(),l.getElementId()),"AVO"):d.addAccDockingPoints(e,l,n.getAllDockingPoints(l.getSetId(),l.getElementId()));var p=n.getRightTopBackUIPos(l.getSetId(),l.getElementId());d.addDelIcon(e,l,p.x,p.y),d.addCopyIcon(e,l)}if("ACC_PLANNER"==d.getConfiguratorState()&&l.getIsDockedAccessoire()){var v=n.getRightTopBackUIPos(l.getSetId(),l.getElementId());d.addDelIcon(e,l,v.x,v.y)}break;case"BOX":var P=n.getBoxPlannerCornerUIPos(l.getSetId(),l.getElementId(),"RIGHTTOPFRONT");if(P&&d.addPosNrUI(e,l,P.x,P.y,c,u),c&&(d.addBoxPlannerDockingPoints(e,l,n),!d.checkBoxPlannerSingleElement(t)&&null!=l.getFreeDockingPointByTypeAndNumber("AVO",1))){var y=n.getBoxPlannerCornerUIPos(l.getSetId(),l.getElementId(),"RIGHTTOPFRONT");y&&d.addDelIcon(e,l,y.x,y.y)}}}}})),i.forEach((function(t,i){for(var r=0;r<t.length;r++){var s=t[r];s.isShelfAcc&&d.addDimensionInfo(e,i,s,n)}}))}},{key:"checkBoxPlannerSingleElement",value:function checkBoxPlannerSingleElement(e){if(1==e.length)return!0;if(2==e.length)for(var t=e[0].getAllDockingPoints(),i=e[0].getAllDockingPoints(),n=0;n<t.length;n++)for(var r=t[n],s=0;s<i.length;s++){var a=i[s];if(r.IsDocking&&a.IsDocking&&2==r.Number&&2==a.Number&&("AVO"==r.Type||"AVU"==r.Type))return!0}return!1}},{key:"Class3DUI",get:function get(){return this.classUI}}])}(),P=function(){return(0,r.A)((function Planner3DImage(e,t,i,r,o,h){var d=this;(0,n.A)(this,Planner3DImage),(0,s.A)(this,"domContainer",void 0),(0,s.A)(this,"imageContainer",void 0),(0,s.A)(this,"UIHandler",void 0),(0,s.A)(this,"curRendering",void 0),(0,s.A)(this,"planner3DGrid",void 0),(0,s.A)(this,"handle3DVisualizationChanged",void 0),(0,s.A)(this,"update3DImgSrcInView",void 0),(0,s.A)(this,"onDoShowNav3DChanged",void 0),(0,s.A)(this,"onSwipeStartScreenPos",void 0),(0,s.A)(this,"onSwipeStartTime",void 0),(0,s.A)(this,"detectSwipe",void 0),(0,s.A)(this,"swipeDetectedCurrentFrame",void 0),(0,s.A)(this,"enablePlanner3DGrid",void 0),(0,s.A)(this,"touchPositionLastFrame",void 0),(0,s.A)(this,"touchMoveDetected",(function(e){e.preventDefault()})),(0,s.A)(this,"startDetectingSwipeMouse",(function(e){d.planner3DGrid.isInTrasnformMode()||d.curRendering.getHasStaticBackground()||(d.onSwipeStartScreenPos=new a.I9(e.clientX,e.clientY),d.onSwipeStartTime=(new Date).getTime(),d.detectSwipe=!0,d.domContainer.addEventListener("mouseup",d.endDetectingSwipeMouse,{passive:!0}))})),(0,s.A)(this,"startDetectingSwipeTouch",(function(e){if(!d.planner3DGrid.isInTrasnformMode()&&!d.curRendering.getHasStaticBackground()&&1==e.touches.length){var t=e.touches[0];d.onSwipeStartScreenPos=new a.I9(t.clientX,t.clientY),d.onSwipeStartTime=(new Date).getTime(),d.detectSwipe=!0,d.touchPositionLastFrame=void 0,d.domContainer.addEventListener("touchend",d.endDetectingSwipeTouch,{passive:!0}),d.domContainer.addEventListener("touchmove",d.onSwipeMoveTouch,{passive:!0})}})),(0,s.A)(this,"endDetectingSwipeMouse",(function(e){d.handleSwipeDetection(e.clientX,e.clientY);var t=d;d.domContainer.removeEventListener("mouseup",t.endDetectingSwipeMouse,!1)})),(0,s.A)(this,"onSwipeMoveTouch",(function(e){if(1==e.touches.length){var t=e.touches[0];d.touchPositionLastFrame=new a.I9(t.clientX,t.clientY)}})),(0,s.A)(this,"endDetectingSwipeTouch",(function(e){null!=d.touchPositionLastFrame&&d.handleSwipeDetection(d.touchPositionLastFrame.x,d.touchPositionLastFrame.y),d.touchPositionLastFrame=void 0,d.domContainer.removeEventListener("touchmove",d.onSwipeMoveTouch,!1),d.domContainer.removeEventListener("touchend",d.endDetectingSwipeTouch,!1)})),this.onSwipeStartScreenPos=new a.I9(-1,-1),this.onSwipeStartTime=(new Date).getTime(),this.detectSwipe=!0,this.UIHandler=new v(e,i,h),this.curRendering=new a.nc("Placeholder","Placeholder","",-1,-1,!1,!1,0,!1,!1,"STREAM"),this.planner3DGrid=new p(i,o),this.onDoShowNav3DChanged=r,this.enablePlanner3DGrid=!1,this.swipeDetectedCurrentFrame=!1,this.update3DImgSrcInView=t}),[{key:"initialize",value:function initialize(e,t,i,n){this.imageContainer=document.getElementById(e),this.planner3DGrid.setCallbackMethods(t,i),this.imageContainer&&(this.addNavigationEvents(this.imageContainer),this.UIHandler.initialize(this.imageContainer)),this.handle3DVisualizationChanged=n}},{key:"handlePlanner3DGridChanged",value:function handlePlanner3DGridChanged(e,t,i,n){if(i)this.enablePlanner3DGrid&&(this.enablePlanner3DGrid=!1,this.planner3DGrid.destroy(e));else{var r=this.enablePlanner3DGrid;this.enablePlanner3DGrid=!!n||!this.enablePlanner3DGrid,r&&!this.enablePlanner3DGrid?this.planner3DGrid.destroy(e):!r&&this.enablePlanner3DGrid&&this.planner3DGrid.initialize(t.imgWidth,t.imgHeight)}}},{key:"clearView",value:function clearView(e){this.planner3DGrid.destroy(e),this.curRendering=new a.nc("Placeholder","Placeholder","",-1,-1,!1,!1,0,!1,!1,"STREAM"),this.update3DImgSrcInView("data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==")}},{key:"getPlanner3DGridEnabled",value:function getPlanner3DGridEnabled(){return this.enablePlanner3DGrid}},{key:"getPlanner3DGridIsInTransformMode",value:function getPlanner3DGridIsInTransformMode(){return this.planner3DGrid.isInTrasnformMode()}},{key:"addNavigationEvents",value:function addNavigationEvents(e){this.domContainer=e;var t=this;e&&(e.addEventListener("mousedown",t.startDetectingSwipeMouse,{passive:!0}),e.addEventListener("touchstart",t.startDetectingSwipeTouch,{passive:!0}),e.addEventListener("touchmove",t.touchMoveDetected,{passive:!0}))}},{key:"handleSwipeDetection",value:function handleSwipeDetection(e,t){if(!this.planner3DGrid.isInTrasnformMode()){if(this.detectSwipe&&(new Date).getTime()-this.onSwipeStartTime<1500&&(Math.abs(this.onSwipeStartScreenPos.x-e)>10||Math.abs(this.onSwipeStartScreenPos.y-t)>10)){var i=e-this.onSwipeStartScreenPos.x,n=this.onSwipeStartScreenPos.x-e,r=t-this.onSwipeStartScreenPos.y,s=this.onSwipeStartScreenPos.y-t;i>0&&i>r&&i>s?null!=this.handle3DVisualizationChanged&&(this.handle3DVisualizationChanged("Nav3DSwipe",{doSwipeRight:!0}),this.swipeDetectedCurrentFrame=!0):n>0&&n>r&&n>s?null!=this.handle3DVisualizationChanged&&(this.handle3DVisualizationChanged("Nav3DSwipe",{doSwipeLeft:!0}),this.swipeDetectedCurrentFrame=!0):r>0&&r>i&&r>n?null!=this.handle3DVisualizationChanged&&(this.handle3DVisualizationChanged("Nav3DSwipe",{doSwipeDown:!0}),this.swipeDetectedCurrentFrame=!0):s>0&&s>i&&s>n&&null!=this.handle3DVisualizationChanged&&(this.handle3DVisualizationChanged("Nav3DSwipe",{doSwipeUp:!0}),this.swipeDetectedCurrentFrame=!0)}this.detectSwipe=!1}}},{key:"getSwipeDetectionFinished",value:function getSwipeDetectionFinished(){return!this.detectSwipe}},{key:"getSwipeDetectedCurrentFrame",value:function getSwipeDetectedCurrentFrame(){var e=this.swipeDetectedCurrentFrame;return this.swipeDetectedCurrentFrame=!1,e}},{key:"updateUI",value:function updateUI(e,t,i,n,r,s,a,o){var h=this;this.enablePlanner3DGrid&&(n.size>0?n.forEach((function(t,i){for(var n=0;n<t.length;n++)h.planner3DGrid.updateUI(e,t[n])})):e.clear2D3DViewerUI()),this.UIHandler.updateUI(e,t,i,this.curRendering,n,r,s,a,o)}},{key:"updatePlannerView",value:function updatePlannerView(e,t,i,n,r){var s=this.curRendering.getHasStaticBackground(),a=t.getHasStaticBackground();if(s!=a&&this.onDoShowNav3DChanged(!a),this.curRendering=t,this.update3DImgSrcInView(t.getImageForSrc()),this.enablePlanner3DGrid){var o=void 0;n.size>0&&n.forEach((function(e,t){null==o&&e.length>0&&(o=e[0])})),this.planner3DGrid.updateScene(e,t,o,i,r)}}},{key:"resetSelectedElementsOnEnterPlannerMode",value:function resetSelectedElementsOnEnterPlannerMode(){return!1}}])}()}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! filename:81 */
|