@roomle/web-sdk 2.79.0 → 2.80.0-alpha.2
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/lib/{banana-for-scale-ce3eda5d.js → banana-for-scale-12147338.js} +2 -2
- package/lib/{banana-for-scale-ce3eda5d.js.map → banana-for-scale-12147338.js.map} +1 -1
- package/lib/{banana-for-scale-d5213ac7.nomodule.js → banana-for-scale-8c9b8e0d.nomodule.js} +2 -2
- package/lib/{banana-for-scale-d5213ac7.nomodule.js.map → banana-for-scale-8c9b8e0d.nomodule.js.map} +1 -1
- package/lib/{camera-behaviour-956df474.nomodule.js → camera-behaviour-1b0b7853.nomodule.js} +2 -2
- package/lib/{camera-behaviour-956df474.nomodule.js.map → camera-behaviour-1b0b7853.nomodule.js.map} +1 -1
- package/lib/{camera-behaviour-265f1725.js → camera-behaviour-4d4e7e7c.js} +2 -2
- package/lib/{camera-behaviour-265f1725.js.map → camera-behaviour-4d4e7e7c.js.map} +1 -1
- package/lib/{component-dimensioning-211401c5.nomodule.js → component-dimensioning-36a1e68e.nomodule.js} +2 -2
- package/lib/component-dimensioning-36a1e68e.nomodule.js.map +1 -0
- package/lib/{component-dimensioning-208d190d.js → component-dimensioning-bdbf6729.js} +2 -2
- package/lib/component-dimensioning-bdbf6729.js.map +1 -0
- package/lib/{component-raycast-helper-76a73fd4.js → component-raycast-helper-40363857.js} +2 -2
- package/lib/component-raycast-helper-40363857.js.map +1 -0
- package/lib/{component-raycast-helper-d36606a4.nomodule.js → component-raycast-helper-67f9a0e9.nomodule.js} +2 -2
- package/lib/component-raycast-helper-67f9a0e9.nomodule.js.map +1 -0
- package/lib/{configurator-b03fe279.nomodule.js → configurator-04e3b0ec.nomodule.js} +2 -2
- package/lib/configurator-04e3b0ec.nomodule.js.map +1 -0
- package/lib/{configurator-db209442.js → configurator-7fce117f.js} +2 -2
- package/lib/configurator-7fce117f.js.map +1 -0
- package/lib/configurator-main-16e36fb1.js +2 -0
- package/lib/configurator-main-16e36fb1.js.map +1 -0
- package/lib/configurator-main.nomodule.js +1 -1
- package/lib/{continuous-drawing-helper-304c9678.js → continuous-drawing-helper-094fdf93.js} +2 -2
- package/lib/continuous-drawing-helper-094fdf93.js.map +1 -0
- package/lib/{continuous-drawing-helper-bf78cff1.nomodule.js → continuous-drawing-helper-f2aea1db.nomodule.js} +2 -2
- package/lib/continuous-drawing-helper-f2aea1db.nomodule.js.map +1 -0
- package/lib/{default-light-setting-c2fd567d.nomodule.js → default-light-setting-7f113f35.nomodule.js} +2 -2
- package/lib/default-light-setting-7f113f35.nomodule.js.map +1 -0
- package/lib/{default-light-setting-f34982ae.js → default-light-setting-ad52e6de.js} +2 -2
- package/lib/default-light-setting-ad52e6de.js.map +1 -0
- package/lib/definitions/common-core/src/configurator-kernel-access.d.ts +4 -1
- package/lib/definitions/common-core/src/services/common-kernel-access.d.ts +8 -4
- package/lib/definitions/common-core/src/utils/init-data.d.ts +1 -0
- package/lib/definitions/common-core/src/webgl/roomle-webgl-renderer.d.ts +1 -0
- package/lib/definitions/configurator-core/src/static-files/fonts.d.ts +2 -2
- package/lib/definitions/planner-core/src/roomle-planner.d.ts +1 -0
- package/lib/definitions/planner-core/src/view-model/wall-plan-element-view-model.d.ts +5 -2
- package/lib/definitions/planner-core/src/webgl/planner-scene-manager.d.ts +7 -0
- package/lib/definitions/typings/kernel.d.ts +25 -12
- package/lib/definitions/typings/planner.d.ts +2 -0
- package/lib/dimensioning-helper-7494fb28.js +2 -0
- package/lib/dimensioning-helper-7494fb28.js.map +1 -0
- package/lib/dimensioning-helper-b9377b93.nomodule.js +2 -0
- package/lib/dimensioning-helper-b9377b93.nomodule.js.map +1 -0
- package/lib/{glb-viewer-8f01091d.js → glb-viewer-039ccdb1.js} +2 -2
- package/lib/{glb-viewer-8f01091d.js.map → glb-viewer-039ccdb1.js.map} +1 -1
- package/lib/{glb-viewer-597ac257.nomodule.js → glb-viewer-0fd5cc99.nomodule.js} +2 -2
- package/lib/{glb-viewer-597ac257.nomodule.js.map → glb-viewer-0fd5cc99.nomodule.js.map} +1 -1
- package/lib/glb-viewer-camera-behaviour-21363fa3.js +2 -0
- package/lib/glb-viewer-camera-behaviour-21363fa3.js.map +1 -0
- package/lib/{glb-viewer-camera-behaviour-d7f286c3.nomodule.js → glb-viewer-camera-behaviour-c43375cf.nomodule.js} +2 -2
- package/lib/glb-viewer-camera-behaviour-c43375cf.nomodule.js.map +1 -0
- package/lib/glb-viewer-main-ca829f73.js +2 -0
- package/lib/glb-viewer-main-ca829f73.js.map +1 -0
- package/lib/glb-viewer-main.nomodule.js +1 -1
- package/lib/legacy/{banana-for-scale-18be7655.legacy.js → banana-for-scale-ade37173.legacy.js} +2 -2
- package/lib/legacy/{banana-for-scale-18be7655.legacy.js.map → banana-for-scale-ade37173.legacy.js.map} +1 -1
- package/lib/legacy/{camera-behaviour-e3581b58.legacy.js → camera-behaviour-ba624fdd.legacy.js} +2 -2
- package/lib/legacy/{camera-behaviour-e3581b58.legacy.js.map → camera-behaviour-ba624fdd.legacy.js.map} +1 -1
- package/lib/legacy/{component-dimensioning-0ff91d29.legacy.js → component-dimensioning-d6f65e0d.legacy.js} +2 -2
- package/lib/legacy/component-dimensioning-d6f65e0d.legacy.js.map +1 -0
- package/lib/legacy/{component-raycast-helper-b7f5e8bd.legacy.js → component-raycast-helper-f8241e23.legacy.js} +2 -2
- package/lib/legacy/component-raycast-helper-f8241e23.legacy.js.map +1 -0
- package/lib/legacy/{configurator-57934960.legacy.js → configurator-9881273c.legacy.js} +2 -2
- package/lib/legacy/configurator-9881273c.legacy.js.map +1 -0
- package/lib/legacy/configurator-main.legacy.js +1 -1
- package/lib/legacy/{continuous-drawing-helper-562124e1.legacy.js → continuous-drawing-helper-8f4235b4.legacy.js} +2 -2
- package/lib/legacy/continuous-drawing-helper-8f4235b4.legacy.js.map +1 -0
- package/lib/legacy/{default-light-setting-e77566a5.legacy.js → default-light-setting-1e175f7c.legacy.js} +2 -2
- package/lib/legacy/default-light-setting-1e175f7c.legacy.js.map +1 -0
- package/lib/legacy/dimensioning-helper-5c4c4754.legacy.js +2 -0
- package/lib/legacy/dimensioning-helper-5c4c4754.legacy.js.map +1 -0
- package/lib/legacy/{glb-viewer-ea6d3597.legacy.js → glb-viewer-53726809.legacy.js} +2 -2
- package/lib/legacy/{glb-viewer-ea6d3597.legacy.js.map → glb-viewer-53726809.legacy.js.map} +1 -1
- package/lib/legacy/{glb-viewer-camera-behaviour-5164a72d.legacy.js → glb-viewer-camera-behaviour-6f853358.legacy.js} +2 -2
- package/lib/legacy/glb-viewer-camera-behaviour-6f853358.legacy.js.map +1 -0
- package/lib/legacy/glb-viewer-main.legacy.js +1 -1
- package/lib/legacy/{material-viewer-6bffb50f.legacy.js → material-viewer-40206245.legacy.js} +2 -2
- package/lib/legacy/material-viewer-40206245.legacy.js.map +1 -0
- package/lib/legacy/material-viewer-main.legacy.js +1 -1
- package/lib/legacy/planner-20fc10ce.legacy.js +2 -0
- package/lib/legacy/{planner-a30ad695.legacy.js.map → planner-20fc10ce.legacy.js.map} +1 -1
- package/lib/legacy/planner-main.legacy.js +1 -1
- package/lib/legacy/{roomle-configurator-48f81f38.legacy.js → roomle-configurator-34ae3e86.legacy.js} +2 -2
- package/lib/legacy/roomle-configurator-34ae3e86.legacy.js.map +1 -0
- package/lib/legacy/{roomle-dependency-injection-3fd533e1.legacy.js → roomle-dependency-injection-3542b35a.legacy.js} +3 -3
- package/lib/legacy/roomle-dependency-injection-3542b35a.legacy.js.map +1 -0
- package/lib/legacy/roomle-sdk.legacy.js +1 -1
- package/lib/legacy/{script-loader-aa704ceb.legacy.js → script-loader-25518980.legacy.js} +2 -2
- package/lib/legacy/script-loader-25518980.legacy.js.map +1 -0
- package/lib/legacy/static/ConfiguratorKernel-d8ae2b5e3db74698.wasm +0 -0
- package/lib/legacy/static/ConfiguratorKernel-e3e0aeb0f3ad9a11.js +86 -0
- package/lib/legacy/static/RoomleCore-09101ce4c57050b0.wasm +0 -0
- package/lib/legacy/static/RoomleCore-34da59877c9fc80d.js +90 -0
- package/lib/legacy/static/RoomleToolsCore-19282746bbb98ca2.wasm +0 -0
- package/lib/legacy/static/RoomleToolsCore-b1b3c955c7b9feb4.js +86 -0
- package/lib/legacy/static/lato_regular-d4b30187185acc59.json +198 -0
- package/lib/legacy/static/lato_regular_sub-d4b30187185acc59.json +198 -0
- package/lib/legacy/{stats-helper-8b9445c9.legacy.js → stats-helper-4dd75b8d.legacy.js} +2 -2
- package/lib/legacy/stats-helper-4dd75b8d.legacy.js.map +1 -0
- package/lib/legacy/{tools-core-88221a7d.legacy.js → tools-core-5dd3b7d4.legacy.js} +2 -2
- package/lib/legacy/tools-core-5dd3b7d4.legacy.js.map +1 -0
- package/lib/{material-viewer-0fa4b211.nomodule.js → material-viewer-3271df96.nomodule.js} +2 -2
- package/lib/material-viewer-3271df96.nomodule.js.map +1 -0
- package/lib/{material-viewer-d7864d8f.js → material-viewer-8b817d3e.js} +2 -2
- package/lib/material-viewer-8b817d3e.js.map +1 -0
- package/lib/material-viewer-main-d05716e9.js +2 -0
- package/lib/material-viewer-main-d05716e9.js.map +1 -0
- package/lib/material-viewer-main.nomodule.js +1 -1
- package/lib/planner-75145ec2.nomodule.js +2 -0
- package/lib/{planner-b8464950.nomodule.js.map → planner-75145ec2.nomodule.js.map} +1 -1
- package/lib/planner-ce25224e.js +2 -0
- package/lib/{planner-76d8228a.js.map → planner-ce25224e.js.map} +1 -1
- package/lib/planner-main-f5484b07.js +2 -0
- package/lib/planner-main-f5484b07.js.map +1 -0
- package/lib/planner-main.nomodule.js +1 -1
- package/lib/{roomle-configurator-511db0e8.nomodule.js → roomle-configurator-96729652.nomodule.js} +2 -2
- package/lib/roomle-configurator-96729652.nomodule.js.map +1 -0
- package/lib/{roomle-configurator-5c1b1237.js → roomle-configurator-e867d909.js} +2 -2
- package/lib/roomle-configurator-e867d909.js.map +1 -0
- package/lib/{roomle-dependency-injection-1e356a73.js → roomle-dependency-injection-56db2f22.js} +3 -3
- package/lib/roomle-dependency-injection-56db2f22.js.map +1 -0
- package/lib/{roomle-dependency-injection-fe1cab4f.nomodule.js → roomle-dependency-injection-c12e4c00.nomodule.js} +3 -3
- package/lib/roomle-dependency-injection-c12e4c00.nomodule.js.map +1 -0
- package/lib/{roomle-sdk-f0dd3c93.js → roomle-sdk-d2dbfbba.js} +2 -2
- package/lib/roomle-sdk-d2dbfbba.js.map +1 -0
- package/lib/roomle-sdk.nomodule.js +1 -1
- package/lib/{script-loader-d1436ad4.nomodule.js → script-loader-98a17bbb.nomodule.js} +2 -2
- package/lib/script-loader-98a17bbb.nomodule.js.map +1 -0
- package/lib/{script-loader-d3f78a09.js → script-loader-ef092985.js} +2 -2
- package/lib/script-loader-ef092985.js.map +1 -0
- package/lib/static/ConfiguratorKernel-d8ae2b5e3db74698.wasm +0 -0
- package/lib/static/ConfiguratorKernel-e3e0aeb0f3ad9a11.js +86 -0
- package/lib/static/RoomleCore-09101ce4c57050b0.wasm +0 -0
- package/lib/static/RoomleCore-34da59877c9fc80d.js +90 -0
- package/lib/static/RoomleToolsCore-19282746bbb98ca2.wasm +0 -0
- package/lib/static/RoomleToolsCore-b1b3c955c7b9feb4.js +86 -0
- package/lib/static/Tween-d57ee5d181fce582.js +767 -1
- package/lib/static/asset-loader.worker-1735a5fb1e401244.js +2 -1
- package/lib/static/asset-loader.worker.js.map +1 -1
- package/lib/static/budgeteer.sw-a4a226d2fc19672e.js +2 -1
- package/lib/static/budgeteer.sw.js.map +1 -1
- package/lib/static/jszip.min-c96375d50e72b199.js +2 -1
- package/lib/static/lato_regular-d4b30187185acc59.json +198 -0
- package/lib/static/lato_regular_sub-d4b30187185acc59.json +198 -0
- package/lib/static/worker-to-main-thread-3ad1cee7.js.map +1 -1
- package/lib/{stats-helper-472e9163.js → stats-helper-c0748092.js} +2 -2
- package/lib/stats-helper-c0748092.js.map +1 -0
- package/lib/{stats-helper-18b27855.nomodule.js → stats-helper-efe5bf85.nomodule.js} +2 -2
- package/lib/stats-helper-efe5bf85.nomodule.js.map +1 -0
- package/lib/{tools-core-6f70168d.js → tools-core-2e800d36.js} +2 -2
- package/lib/tools-core-2e800d36.js.map +1 -0
- package/lib/{tools-core-e39e5ee7.nomodule.js → tools-core-c31d15d3.nomodule.js} +2 -2
- package/lib/tools-core-c31d15d3.nomodule.js.map +1 -0
- package/package.json +2 -2
- package/lib/component-dimensioning-208d190d.js.map +0 -1
- package/lib/component-dimensioning-211401c5.nomodule.js.map +0 -1
- package/lib/component-raycast-helper-76a73fd4.js.map +0 -1
- package/lib/component-raycast-helper-d36606a4.nomodule.js.map +0 -1
- package/lib/configurator-b03fe279.nomodule.js.map +0 -1
- package/lib/configurator-db209442.js.map +0 -1
- package/lib/configurator-main-8b004fb9.js +0 -2
- package/lib/configurator-main-8b004fb9.js.map +0 -1
- package/lib/continuous-drawing-helper-304c9678.js.map +0 -1
- package/lib/continuous-drawing-helper-bf78cff1.nomodule.js.map +0 -1
- package/lib/default-light-setting-c2fd567d.nomodule.js.map +0 -1
- package/lib/default-light-setting-f34982ae.js.map +0 -1
- package/lib/dimensioning-helper-17297085.js +0 -2
- package/lib/dimensioning-helper-17297085.js.map +0 -1
- package/lib/dimensioning-helper-32be2c2d.nomodule.js +0 -2
- package/lib/dimensioning-helper-32be2c2d.nomodule.js.map +0 -1
- package/lib/glb-viewer-camera-behaviour-3ef8c6cf.js +0 -2
- package/lib/glb-viewer-camera-behaviour-3ef8c6cf.js.map +0 -1
- package/lib/glb-viewer-camera-behaviour-d7f286c3.nomodule.js.map +0 -1
- package/lib/glb-viewer-main-009db5f6.js +0 -2
- package/lib/glb-viewer-main-009db5f6.js.map +0 -1
- package/lib/legacy/component-dimensioning-0ff91d29.legacy.js.map +0 -1
- package/lib/legacy/component-raycast-helper-b7f5e8bd.legacy.js.map +0 -1
- package/lib/legacy/configurator-57934960.legacy.js.map +0 -1
- package/lib/legacy/continuous-drawing-helper-562124e1.legacy.js.map +0 -1
- package/lib/legacy/default-light-setting-e77566a5.legacy.js.map +0 -1
- package/lib/legacy/dimensioning-helper-23fbd546.legacy.js +0 -2
- package/lib/legacy/dimensioning-helper-23fbd546.legacy.js.map +0 -1
- package/lib/legacy/glb-viewer-camera-behaviour-5164a72d.legacy.js.map +0 -1
- package/lib/legacy/material-viewer-6bffb50f.legacy.js.map +0 -1
- package/lib/legacy/planner-a30ad695.legacy.js +0 -2
- package/lib/legacy/roomle-configurator-48f81f38.legacy.js.map +0 -1
- package/lib/legacy/roomle-dependency-injection-3fd533e1.legacy.js.map +0 -1
- package/lib/legacy/script-loader-aa704ceb.legacy.js.map +0 -1
- package/lib/legacy/static/ConfiguratorKernel-177b506cdd3711c9.js +0 -95
- package/lib/legacy/static/ConfiguratorKernel-85781bb41f4ad73b.wasm +0 -0
- package/lib/legacy/static/RoomleCore-554c790f636abde3.js +0 -98
- package/lib/legacy/static/RoomleCore-72d11772d69ee987.wasm +0 -0
- package/lib/legacy/static/RoomleToolsCore-354feeb929ea1598.js +0 -92
- package/lib/legacy/static/RoomleToolsCore-785e6369dca13d78.wasm +0 -0
- package/lib/legacy/static/rubik_regular-bc008a7de2daee79.json +0 -3535
- package/lib/legacy/static/rubik_regular_sub-2dd2d5cca49018c5.json +0 -168
- package/lib/legacy/stats-helper-8b9445c9.legacy.js.map +0 -1
- package/lib/legacy/tools-core-88221a7d.legacy.js.map +0 -1
- package/lib/material-viewer-0fa4b211.nomodule.js.map +0 -1
- package/lib/material-viewer-d7864d8f.js.map +0 -1
- package/lib/material-viewer-main-c59f3c1b.js +0 -2
- package/lib/material-viewer-main-c59f3c1b.js.map +0 -1
- package/lib/planner-76d8228a.js +0 -2
- package/lib/planner-b8464950.nomodule.js +0 -2
- package/lib/planner-main-cf533850.js +0 -2
- package/lib/planner-main-cf533850.js.map +0 -1
- package/lib/roomle-configurator-511db0e8.nomodule.js.map +0 -1
- package/lib/roomle-configurator-5c1b1237.js.map +0 -1
- package/lib/roomle-dependency-injection-1e356a73.js.map +0 -1
- package/lib/roomle-dependency-injection-fe1cab4f.nomodule.js.map +0 -1
- package/lib/roomle-sdk-f0dd3c93.js.map +0 -1
- package/lib/script-loader-d1436ad4.nomodule.js.map +0 -1
- package/lib/script-loader-d3f78a09.js.map +0 -1
- package/lib/static/ConfiguratorKernel-177b506cdd3711c9.js +0 -1
- package/lib/static/ConfiguratorKernel-177b506cdd3711c9.js.map +0 -1
- package/lib/static/ConfiguratorKernel-85781bb41f4ad73b.wasm +0 -0
- package/lib/static/RoomleCore-554c790f636abde3.js +0 -1
- package/lib/static/RoomleCore-554c790f636abde3.js.map +0 -1
- package/lib/static/RoomleCore-72d11772d69ee987.wasm +0 -0
- package/lib/static/RoomleToolsCore-354feeb929ea1598.js +0 -1
- package/lib/static/RoomleToolsCore-354feeb929ea1598.js.map +0 -1
- package/lib/static/RoomleToolsCore-785e6369dca13d78.wasm +0 -0
- package/lib/static/Tween-d57ee5d181fce582.js.map +0 -1
- package/lib/static/asset-loader.worker-1735a5fb1e401244.js.map +0 -1
- package/lib/static/budgeteer.sw-a4a226d2fc19672e.js.map +0 -1
- package/lib/static/jszip.min-c96375d50e72b199.js.map +0 -1
- package/lib/static/rubik_regular-bc008a7de2daee79.json +0 -3535
- package/lib/static/rubik_regular_sub-2dd2d5cca49018c5.json +0 -168
- package/lib/stats-helper-18b27855.nomodule.js.map +0 -1
- package/lib/stats-helper-472e9163.js.map +0 -1
- package/lib/tools-core-6f70168d.js.map +0 -1
- package/lib/tools-core-e39e5ee7.nomodule.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-light-setting-7f113f35.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{L as LightSetting}from"./camera-behaviour-
|
|
2
|
-
//# sourceMappingURL=default-light-setting-
|
|
1
|
+
import{L as LightSetting}from"./camera-behaviour-4d4e7e7c.js";import{a1 as getGUI}from"./roomle-dependency-injection-56db2f22.js";import{D as DirectionalLight,C as Color,V as Vector2,a as Vector3,A as AmbientLight}from"./main-thread-to-worker-82b32425.js";class DefaultLightSetting extends LightSetting{constructor(i,t){super(i,t),this._params={ambientLight:{color:"#ffffff"},mainDirLight:{position:{x:-3,y:4,z:4},color:"#ffffff"},secondDirLight:{position:{x:3,y:4,z:3},color:"#ffffff"}},this._mainDirectionalLight=new DirectionalLight(new Color(this._params.mainDirLight.color),.8),this._mainDirectionalLight.position.set(this._params.mainDirLight.position.x,this._params.mainDirLight.position.y,this._params.mainDirLight.position.z),this._mainDirectionalLight.layers.set(1),this._mainDirectionalLight.castShadow=!0,this._mainDirectionalLight.shadow.camera.near=.1,this._mainDirectionalLight.shadow.camera.far=100,this._mainDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._mainDirectionalLight.visible=!0,this._mainDirectionalLight.lookAt(new Vector3(0,0,0)),this._secondDirectionalLight=new DirectionalLight(new Color(this._params.secondDirLight.color),.2),this._secondDirectionalLight.position.set(this._params.secondDirLight.position.x,this._params.secondDirLight.position.y,this._params.secondDirLight.position.z),this._secondDirectionalLight.layers.set(1),this._secondDirectionalLight.castShadow=!1,this._secondDirectionalLight.shadow.camera.near=.1,this._secondDirectionalLight.shadow.camera.far=100,this._secondDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._secondDirectionalLight.visible=!0,this._secondDirectionalLight.lookAt(new Vector3(0,0,0)),this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this._ambientLight.layers.set(1),this.addToScene()}needsBounds(){return!0}updateBounds(i){const t=i.getSize(new Vector3),a=Math.max(Math.max(t.x,t.y),t.z)+1,o=a/2;this._mainDirectionalLight.shadow.camera.top=o,this._mainDirectionalLight.shadow.camera.bottom=-o,this._mainDirectionalLight.shadow.camera.left=-o,this._mainDirectionalLight.shadow.camera.right=o,this._mainDirectionalLight.shadow.camera.near=.01,this._mainDirectionalLight.shadow.camera.far=4*a,this._mainDirectionalLight.shadow.camera.updateProjectionMatrix(),this._secondDirectionalLight.shadow.camera.top=o,this._secondDirectionalLight.shadow.camera.bottom=-o,this._secondDirectionalLight.shadow.camera.left=-o,this._secondDirectionalLight.shadow.camera.right=o,this._secondDirectionalLight.shadow.camera.near=.01,this._secondDirectionalLight.shadow.camera.far=4*a,this._secondDirectionalLight.shadow.camera.updateProjectionMatrix()}addToScene(){this._scene.add(this._mainDirectionalLight),this._scene.add(this._secondDirectionalLight),this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._mainDirectionalLight),this._scene.remove(this._secondDirectionalLight),this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let i=getGUI();if(i){if(this._ambientLight){let t=i.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(i=>this._ambientLight.color=new Color(i))}if(this._mainDirectionalLight){let t=i.addFolder("Main Directional Light");t.add(this._mainDirectionalLight,"visible"),t.add(this._mainDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._mainDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._mainDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}if(this._secondDirectionalLight){let t=i.addFolder("Second Directional Light");t.add(this._secondDirectionalLight,"visible"),t.add(this._secondDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._secondDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._secondDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}}}}export{DefaultLightSetting as D};
|
|
2
|
+
//# sourceMappingURL=default-light-setting-ad52e6de.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-light-setting-ad52e6de.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -81,7 +81,10 @@ export default class ConfiguratorKernelAccess extends CommonKernelAccess {
|
|
|
81
81
|
private _onBoundsUpdate;
|
|
82
82
|
planObjectDeleted(): void;
|
|
83
83
|
requestPlanObjectDimensions(): void;
|
|
84
|
-
requestExternalMesh(
|
|
84
|
+
requestExternalMesh(requestedMeshes: Array<{
|
|
85
|
+
meshId: string;
|
|
86
|
+
quality: number;
|
|
87
|
+
}>): Promise<void>;
|
|
85
88
|
Editor3dComponentCreated(id: number, position: KernelVector3, eulerAngles: KernelVector3, isRootComponent: boolean, parentId: number): void;
|
|
86
89
|
Editor3dPlanObjectConstructionDone(planObjectId: number): void;
|
|
87
90
|
Editor3dBeginGroup(): void;
|
|
@@ -5,7 +5,7 @@ import type DataSyncer from './data-syncer';
|
|
|
5
5
|
import type { ArticleNumber, ConfigurationHash, RapiConfiguration, RapiId, RapiPrice } from '../../../typings/rapi-types';
|
|
6
6
|
import type { LifeCycleCallbacks } from '../life-cycle-manager';
|
|
7
7
|
import type { Context } from '../di/context';
|
|
8
|
-
import type {
|
|
8
|
+
import type { AssetRequest, ConfigurationExporter, ConfiguratorKernelClass, KernelMeshAttributes, KernelMeshBuffer, KernelPart, KernelPartList, KernelPartListPrice, KernelVector3 } from '../../../typings/kernel';
|
|
9
9
|
import type ConfiguratorUiCallbacks from '../../../configurator-core/src/services/configurator-ui-callback';
|
|
10
10
|
import type { GlobalCallback } from './global-callback';
|
|
11
11
|
import type InitData from '../utils/init-data';
|
|
@@ -87,9 +87,9 @@ export default abstract class CommonKernelAccess implements LifeCycleCallbacks,
|
|
|
87
87
|
protected isReady(): void;
|
|
88
88
|
protected addDebugInfo(): void;
|
|
89
89
|
getConfigurationData(planObjectId: number): Promise<RapiConfiguration>;
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
loadItemConfigurations(
|
|
90
|
+
requestAssets(requestedAssets: AssetRequest[]): void;
|
|
91
|
+
loadComponent(componentIds: string[]): void;
|
|
92
|
+
loadItemConfigurations(itemIds: string[]): Promise<void>;
|
|
93
93
|
requestDeleteComponent(componentId: number): void;
|
|
94
94
|
dockComponentWithPosition(parentId: number, parentDockId: number, childId: number, childDockId: number, position: KernelVector3): void;
|
|
95
95
|
Editor3dAddMesh(runtimeComponentId: number, meshId: number, geometryName: string, environmentGeometry: boolean, meshAttributes: KernelMeshAttributes, meshBuffer: KernelMeshBuffer): void;
|
|
@@ -120,6 +120,10 @@ export default abstract class CommonKernelAccess implements LifeCycleCallbacks,
|
|
|
120
120
|
protected _calcPrice(partList?: KernelPartList): Promise<KernelPartListPrice>;
|
|
121
121
|
addUiDataAndPriceToPartList(partList: KernelPartList, hash: string): Promise<KernelPartList>;
|
|
122
122
|
addUiDataToPartList(partList: KernelPart[], hash: string): KernelPart[];
|
|
123
|
+
requestExternalMesh(_requestedMeshes: Array<{
|
|
124
|
+
meshId: string;
|
|
125
|
+
quality: number;
|
|
126
|
+
}>): void;
|
|
123
127
|
requestPartListAndUpdatePricesOfParts(hash?: ConfigurationHash, _prices?: Map<ArticleNumber, RapiPrice>): Promise<void>;
|
|
124
128
|
}
|
|
125
129
|
export {};
|
|
@@ -63,6 +63,7 @@ export default class InitData implements Context, Omit<InitDataDefinition, 'colo
|
|
|
63
63
|
showInfos?: boolean;
|
|
64
64
|
showPrice?: boolean;
|
|
65
65
|
applyCurrentGlobalParameters?: boolean;
|
|
66
|
+
configureInRoom?: boolean;
|
|
66
67
|
featureFlags: FeatureFlags;
|
|
67
68
|
mode?: Enumify<typeof CAMERA_TYPE>;
|
|
68
69
|
edit?: boolean;
|
|
@@ -31,6 +31,7 @@ export declare class RoomleWebGLRenderer {
|
|
|
31
31
|
private _fpsCounter;
|
|
32
32
|
get renderer(): WebGLRenderer;
|
|
33
33
|
get sceneRenderer(): SceneRenderer;
|
|
34
|
+
get isConfiguring(): boolean;
|
|
34
35
|
get screenSpaceShadowParameters(): ScreenSpaceShadowMapParameters;
|
|
35
36
|
get shadowAndAoPassParameters(): ShadowAndAoPassParameters;
|
|
36
37
|
get bakedGroundContactShadowParameters(): BakedGroundContactShadowParameters;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { default as
|
|
2
|
-
export { default as
|
|
1
|
+
export { default as LATO_SUB_FILE_NAME } from '../../public/fonts/lato_regular_sub.json';
|
|
2
|
+
export { default as LATO_FILE_NAME } from '../../public/fonts/lato_regular.json';
|
|
@@ -104,6 +104,7 @@ export default class RoomlePlanner implements KernelAccessCallbackI, RoomlePlann
|
|
|
104
104
|
* @param initData
|
|
105
105
|
*/
|
|
106
106
|
setOverrides(initData: InitDataDefinition & GlobalInitDataDefinition): void;
|
|
107
|
+
toggleConfigureInRoom(): void;
|
|
107
108
|
switch2D(): void;
|
|
108
109
|
switch3D(): void;
|
|
109
110
|
switchToFirstPerson(): void;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { KernelWall, PlanObject } from '../../../typings/planner';
|
|
2
2
|
import PlanElementViewModel from '../../../common-core/src/view-model/plan-element-view-model';
|
|
3
3
|
import type { Position2, Position3 } from '../../../common-core/src/common-interfaces';
|
|
4
|
-
import type
|
|
5
|
-
import { Mesh, Vector3 } from 'three';
|
|
4
|
+
import { type RoomleEventedMesh } from '../../../common-core/src/utils/threejs-utils';
|
|
5
|
+
import { Mesh, type MeshPhysicalMaterial, Vector3 } from 'three';
|
|
6
6
|
import { type DimensionDefinition } from '../utils/measurements';
|
|
7
7
|
export type WallDimension = DimensionDefinition<Vector3, Vector3>;
|
|
8
8
|
export type WallDimensionTransferable = DimensionDefinition<Position2, Position3>;
|
|
@@ -23,4 +23,7 @@ export default class WallPlanElementViewModel extends PlanElementViewModel {
|
|
|
23
23
|
private _setMaterial;
|
|
24
24
|
select(): void;
|
|
25
25
|
deselect(): void;
|
|
26
|
+
protected _updateBoundingBox(): void;
|
|
27
|
+
private _setBoundingBoxValues;
|
|
28
|
+
protected _generateBoundingBox(): RoomleEventedMesh;
|
|
26
29
|
}
|
|
@@ -40,6 +40,7 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
40
40
|
private _roomlePlannerCallback;
|
|
41
41
|
private _sky;
|
|
42
42
|
private _drawingEnabled;
|
|
43
|
+
private _configureInRoom;
|
|
43
44
|
private _planId;
|
|
44
45
|
private _preloadScene;
|
|
45
46
|
private _staticItemGuard;
|
|
@@ -86,6 +87,7 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
86
87
|
importGLB(url: string): void;
|
|
87
88
|
clearScene(): void;
|
|
88
89
|
private _addSky;
|
|
90
|
+
toggleConfigureInRoom(): void;
|
|
89
91
|
switchTo2D(): void;
|
|
90
92
|
switchTo3D(): void;
|
|
91
93
|
switchToFirstPerson(): void;
|
|
@@ -109,6 +111,11 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
109
111
|
getBounds(): Box3;
|
|
110
112
|
getGeometryBounds(): Box3;
|
|
111
113
|
getPlanObject(id: number): KernelPlanObject;
|
|
114
|
+
/**
|
|
115
|
+
* This is needed to get the root plan object id in case a plan element is selected
|
|
116
|
+
* which has been docked using `advanced docking`
|
|
117
|
+
* @param id
|
|
118
|
+
*/
|
|
112
119
|
getRootPlanObjectId(id: number): number;
|
|
113
120
|
cancelPlanElementSelection(reason: CancelSelectionReasons): void;
|
|
114
121
|
deletePlanElementSelection(): Promise<void>;
|
|
@@ -99,6 +99,7 @@ export interface KernelParameter {
|
|
|
99
99
|
validRange: KernelRange;
|
|
100
100
|
validValues: KernelValue[];
|
|
101
101
|
group: string;
|
|
102
|
+
visibleInPlanner?: boolean;
|
|
102
103
|
}
|
|
103
104
|
export interface KernelParameterGroup {
|
|
104
105
|
key: string;
|
|
@@ -174,6 +175,8 @@ export interface KernelAnimation {
|
|
|
174
175
|
key: string;
|
|
175
176
|
label: string;
|
|
176
177
|
visibleInPlanner: boolean;
|
|
178
|
+
applyToChildren?: boolean;
|
|
179
|
+
animate?: boolean;
|
|
177
180
|
}
|
|
178
181
|
export interface KernelAnimationAction {
|
|
179
182
|
key: string;
|
|
@@ -271,6 +274,27 @@ export interface AddOnSpot {
|
|
|
271
274
|
position: KernelVector3;
|
|
272
275
|
mask: string;
|
|
273
276
|
}
|
|
277
|
+
export declare const CORE_ASSET_TYPE: {
|
|
278
|
+
readonly ITEM: 0;
|
|
279
|
+
readonly COMPONENT: 1;
|
|
280
|
+
readonly EXTERNAL_MESH: 2;
|
|
281
|
+
readonly MATERIAL_PROPERTIES: 3;
|
|
282
|
+
readonly MATERIAL_GROUP: 4;
|
|
283
|
+
};
|
|
284
|
+
export interface AssetType {
|
|
285
|
+
value: Enumify<typeof CORE_ASSET_TYPE>;
|
|
286
|
+
}
|
|
287
|
+
export interface AssetRequest {
|
|
288
|
+
id: string;
|
|
289
|
+
value: number;
|
|
290
|
+
type: AssetType;
|
|
291
|
+
}
|
|
292
|
+
export interface AssetResponse {
|
|
293
|
+
data: any;
|
|
294
|
+
id: string;
|
|
295
|
+
type: AssetType;
|
|
296
|
+
value?: number;
|
|
297
|
+
}
|
|
274
298
|
export interface KernelContainer {
|
|
275
299
|
wasmBinaryFile: string;
|
|
276
300
|
print: (msg: string) => void;
|
|
@@ -383,14 +407,12 @@ export interface ConfiguratorKernelClass {
|
|
|
383
407
|
loadConfiguration(kernelConversationId: number, configurationObject: ConfigurationString, position: KernelVector3): void;
|
|
384
408
|
loadPlainComponent(conversationId: number, componentId: RapiId, configuration: ConfigurationString): void;
|
|
385
409
|
loadFreeFlyingConfiguration(conversationId: number, configuration: ConfigurationString): void;
|
|
386
|
-
|
|
410
|
+
assetsLoaded(assets: AssetResponse | AssetResponse[]): void;
|
|
387
411
|
deleteComponent(componentId: number): void;
|
|
388
412
|
deletePlanComponent(componentId: any): void;
|
|
389
413
|
deletePlanComponents(componentIds: any): void;
|
|
390
414
|
resetPriceListIds(): void;
|
|
391
415
|
addPriceList(newLocale: string): void;
|
|
392
|
-
loadedSubComponent(parentId: number, partId: number, componentId: string, configuration: ConfigurationString): void;
|
|
393
|
-
loadedItemConfiguration(conversationId: number, itemId: string, serializedItemConfiguration: string): void;
|
|
394
416
|
requestPlanObjectConstruction(planObjectId: number): void;
|
|
395
417
|
requestPlanComponentConstruction(componentId: number): void;
|
|
396
418
|
requestDeltaPlanComponentConstruction(componentId: number): void;
|
|
@@ -434,17 +456,8 @@ export interface ConfiguratorKernelClass {
|
|
|
434
456
|
};
|
|
435
457
|
loadComponentDefinition(conversationId: number, component: string): void;
|
|
436
458
|
syncPlanObjectToView(conversationId: number, planObjectId: number): void;
|
|
437
|
-
addMeshCorto(meshId: string, quality: number, data: Uint8Array): void;
|
|
438
459
|
setExternalMeshInvalid(meshId: string, quality: number): void;
|
|
439
|
-
setMaterialsInGroup(materialGroups: Array<{
|
|
440
|
-
group: string;
|
|
441
|
-
materials: string[];
|
|
442
|
-
}>): void;
|
|
443
460
|
setActiveGroupInView(groupId: string): void;
|
|
444
|
-
setMaterialProperties(propertiesOfMaterials: Array<{
|
|
445
|
-
id: RapiId;
|
|
446
|
-
properties: EmscriptenMap<string, string>;
|
|
447
|
-
}>): void;
|
|
448
461
|
setActiveGroupInViewForPlanObject(groupId: string, runtimeId: number): void;
|
|
449
462
|
setUpdateCallbacksOnlyIfGeometryIsReady(updateCallbacksOnlyIfGeometryIsReady: boolean): void;
|
|
450
463
|
loadExternalAttributeDefinition(serializedDefinition: string): void;
|
|
@@ -106,6 +106,8 @@ export interface WallPlanObject extends PlanObject {
|
|
|
106
106
|
getLength(preferredSide: WallSide): number;
|
|
107
107
|
getFrom(): NodePlanObject;
|
|
108
108
|
getTo(): NodePlanObject;
|
|
109
|
+
readonly thickness: number;
|
|
110
|
+
readonly height: number;
|
|
109
111
|
}
|
|
110
112
|
export interface ConstructionPlanObject extends PlanObject {
|
|
111
113
|
getAttachedWall(): WallPlanObject;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{aG as normalizeRotation,w as dispose,_ as __decorate,i as inject,ah as AsyncGuard,aH as AsyncDependencyLoader,ad as convertToTHREE}from"./roomle-dependency-injection-56db2f22.js";import{O as Object3D,a as Vector3,h as MeshBasicMaterial,w as DoubleSide,br as MeshPhongMaterial,B as BufferGeometry,z as Mesh,Q as Quaternion,bc as PlaneGeometry,K as Group,u as LineBasicMaterial,G as Line,b as BufferAttribute,b0 as Line3,ad as Box3}from"./main-thread-to-worker-82b32425.js";import{T as TextGeometry}from"./TextGeometry-f0a85d6a.js";const PLANE_MATERIAL="component_dimensioning_plane_material",TEXT_MATERIAL="component_dimensioning_text_material";class TextWithBackground extends Object3D{constructor(e){super(),this._label="",this._parameters={font:null,size:.1,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},this.topDown=!1,this._parameters.font=e,this._position=new Vector3,this._initMaterials(),this._init(),this._update()}_initMaterials(){this._cacheHolder.materialCache.has(PLANE_MATERIAL)?this._planeMaterial=this._cacheHolder.materialCache.get(PLANE_MATERIAL):(this._planeMaterial=new MeshBasicMaterial({color:16777215,side:DoubleSide,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(PLANE_MATERIAL,this._planeMaterial)),this._cacheHolder.materialCache.has(TEXT_MATERIAL)?this._textMaterial=this._cacheHolder.materialCache.get(TEXT_MATERIAL):(this._textMaterial=new MeshPhongMaterial({color:3618615}),this._cacheHolder.materialCache.set(TEXT_MATERIAL,this._textMaterial))}_init(){let e=new BufferGeometry;this._text=new Mesh(e,this._textMaterial),this._text.userData.ignoreComponentRaycast=!0,this._text.name="text with background text "+this._label,this._plane=new Mesh(e,this._planeMaterial),this._plane.userData.ignoreComponentRaycast=!0,this._plane.name="text with background plane "+this._label,this._textGeometry=new TextGeometry(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this.add(this._text),this.add(this._plane)}update(e,t,i){this._position.copy(e),this._cameraPosition=i,this._label=t;const s=this.getWorldPosition(new Vector3),n=this._cameraPosition.distanceTo(s),o=Math.max(.01,n/150),h=Math.max(5e-4,n/5e3);this._parameters.bevelThickness=h,this._parameters.bevelSize=h,this._parameters.size=o,this._textGeometry=new TextGeometry(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this._update()}_update(){if(this.topDown){let e=new Quaternion;e.setFromAxisAngle(new Vector3(-1,0,0),Math.PI/2),this._updateText(this._textGeometry,e,new Vector3)}else if(this._updateText(this._textGeometry,new Quaternion,new Vector3),this._cameraPosition){const e=this.getWorldPosition(new Vector3),t=normalizeRotation(Math.atan2(this._cameraPosition.x-e.x,this._cameraPosition.z-e.z)-this.parent.rotation.y);this._text.rotation.y=t,this._plane.rotation.y=t}}_updateText(e,t,i){let s=new Vector3;s.copy(this._position),i.x*=this._getXSign(),s.add(i);let n=e.boundingBox.getSize(new Vector3);e.center(),this._text.position.copy(s),t&&this._text.quaternion.copy(t);let o=new PlaneGeometry(n.x+.02,n.y+.02,32);o.center(),this._plane.geometry=o,this._plane.position.copy(s),t&&this._plane.quaternion.copy(t)}_getXSign(){return!this._cameraPosition||this._cameraPosition.x>=0?1:-1}dispose(){dispose(this)}}__decorate([inject],TextWithBackground.prototype,"_cacheHolder",void 0);class DimensioningHelper{constructor(e){this._objectRotation=0,this._cameraPosition=new Vector3,this._topDimensions=!1,this._initialized=new AsyncGuard,this._enabled=!1,this._dimensionsVisible=!1,this._dimensionLineGroup=new Group,this._dimensionTextGroup=new Object3D,this._creator_=e,this._lineMaterial=new LineBasicMaterial({color:3618615,linewidth:2});let t=new BufferGeometry;this._widthLine=new Line(t,this._lineMaterial),this._widthLine.userData.ignoreComponentRaycast=!0,this._widthLine.name="dimension width line",this._dimensionLineGroup.add(this._widthLine),this._heightLine=new Line(t,this._lineMaterial),this._heightLine.userData.ignoreComponentRaycast=!0,this._heightLine.name="dimension height line",this._dimensionLineGroup.add(this._heightLine),this._depthLine=new Line(t,this._lineMaterial),this._depthLine.userData.ignoreComponentRaycast=!0,this._depthLine.name="dimension depth line",this._dimensionLineGroup.add(this._depthLine),this._planeMaterial=new MeshBasicMaterial({color:16777215,side:DoubleSide,opacity:.8,transparent:!0}),AsyncDependencyLoader.loadFont("static/lato_regular_sub-d4b30187185acc59.json").then(e=>{this._font=e,this._loaded()})}_loaded(){this.update(!1),this.addToObject(this._object),this.addToUiScene(this._uiScene),this._initialized.resolve()}_performUpdate(e){this._enabled&&(this._dimensions||e)&&this._font&&(this._updateHeight(),this._updateWidth(),this._updateDepth())}_updateWidth(){let e=new BufferGeometry,t=this._getWidthEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._widthLine.geometry.dispose(),this._widthLine.geometry=e;let s=t.getCenter(new Vector3);this._widthText||(this._widthText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._widthText)),this._widthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.x);this._widthText.update(s,n,this._cameraPosition)}_updateHeight(){let e=new BufferGeometry,t=this._getHeightEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._heightLine.geometry.dispose(),this._heightLine.geometry=e;let s=t.getCenter(new Vector3);this._heightText||(this._heightText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._heightText)),this._heightText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.y);this._heightText.update(s,n,this._cameraPosition)}_updateDepth(){let e=new BufferGeometry,t=this._getDepthEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._depthLine.geometry.dispose(),this._depthLine.geometry=e;let s=t.getCenter(new Vector3);this._depthText||(this._depthText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._depthText)),this._depthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(-1e3*this._dimensions.z);this._depthText.update(s,n,this._cameraPosition)}updateSize(e){this._origin=convertToTHREE(e.origin),this._dimensionLineGroup.position.x=this._origin.x-this._object.position.x,this._dimensionLineGroup.position.y=this._origin.y-this._object.position.y,this._dimensionLineGroup.position.z=this._origin.z-this._object.position.z,this._dimensions=convertToTHREE(e.size);const t=this._dimensionLineGroup.localToWorld(new Vector3);this._dimensionTextGroup.position.copy(t),this.update()}update(e=!1){this._enabled&&!this._dimensionsVisible&&(this._dimensionsVisible=!0,this._visibilityChangedCallback()),this._performUpdate(e)}addToObject(e){this._widthText&&this._widthLine&&this._heightText&&this._heightLine&&this._heightText&&this._heightLine&&e.add(this._dimensionLineGroup)}removeFromObject(e){e.remove(this._dimensionLineGroup),this.update()}addToUiScene(e){if(!(this._widthText&&this._heightText&&this._depthText&&this._object))return;const t=this._dimensionLineGroup.localToWorld(new Vector3);this._dimensionTextGroup.position.copy(t),this._dimensionTextGroup.rotation.y=this._objectRotation,e.add(this._dimensionTextGroup),this.update()}removeFromUiScene(e){e.remove(this._dimensionTextGroup),this.update()}_getWidthEdge(){const e=this._getRotation();return e>Math.PI/2||e<-Math.PI/2?new Line3(new Vector3(-.05,0,this._dimensions.z-.05),new Vector3(this._dimensions.x+.05,0,this._dimensions.z-.05)):new Line3(new Vector3(-.05,0,.05),new Vector3(this._dimensions.x+.05,0,.05))}_getDepthEdge(){return this._getRotation()>0?new Line3(new Vector3(.05+this._dimensions.x,0,.05),new Vector3(.05+this._dimensions.x,0,this._dimensions.z-.05)):new Line3(new Vector3(-.05,0,.05),new Vector3(-.05,0,this._dimensions.z-.05))}_getHeightEdge(){const e=this._getRotation();return e>0&&e<Math.PI/2?new Line3(new Vector3(-.05,0,.05),new Vector3(-.05,this._dimensions.y+.05,.05)):e>Math.PI/2?new Line3(new Vector3(-.05,0,this._dimensions.z-.05),new Vector3(-.05,this._dimensions.y+.05,this._dimensions.z-.05)):e<-Math.PI/2?new Line3(new Vector3(.05+this._dimensions.x,0,this._dimensions.z-.05),new Vector3(.05+this._dimensions.x,this._dimensions.y+.05,this._dimensions.z-.05)):new Line3(new Vector3(.05+this._dimensions.x,0,.05),new Vector3(.05+this._dimensions.x,this._dimensions.y+.05,.05))}onDimensionsVisibilityChanged(e){this._onChange=e}enableTopDimensions(){this._topDimensions=!0,this.enableDimensions(),this._heightLine.visible=!1,this._heightText.visible=!1,this.update(!0)}disableTopDimensions(){this._topDimensions=!1,this._heightLine.visible=!0,this._heightText.visible=!0,this.disableDimensions()}enableDimensions(){this._enabled=!0,this.update(!0),this.addToObject(this._object),this.addToUiScene(this._uiScene)}disableDimensions(){this._enabled=!1,this._dimensionsVisible&&(this._dimensionsVisible=!1,this._visibilityChangedCallback()),this.removeFromUiScene(this._uiScene),this.removeFromObject(this._object)}_visibilityChangedCallback(){this._onChange&&this._onChange(this._dimensionsVisible)}_clear(){this._lineMaterial.dispose(),this._planeMaterial.dispose(),this._widthLine.geometry.dispose(),this._heightLine.geometry.dispose(),this._depthLine.geometry.dispose(),this._heightText.dispose(),this._heightText.dispose(),this._depthText.dispose()}getBoundingBox(){const e=new Box3;return e.expandByObject(this._widthLine),e.expandByObject(this._widthText),e.expandByObject(this._heightLine),e.expandByObject(this._heightText),e.expandByObject(this._depthLine),e.expandByObject(this._depthText),e}setVisibility(e){this._dimensionLineGroup&&this._dimensionTextGroup&&(this._dimensionLineGroup.visible=e,this._dimensionTextGroup.visible=e)}moveCameraStart(e){this.setVisibility(!1),this._cameraPosition=e,this.update()}moveCameraEnd(e){this.setVisibility(!0),this._cameraPosition=e,this.update()}clearScene(e){this._clear()}setObject(e,t=0){this._object=e,this._objectRotation=t}setUiScene(e){this._uiScene=e}isInitialized(){return this._initialized.wait()}areDimensionsEnabled(){return this._enabled}_getRotation(){const e=this._object.getWorldPosition(new Vector3);return normalizeRotation(Math.atan2(this._cameraPosition.x-e.x,this._cameraPosition.z-e.z)-this._objectRotation)}}__decorate([inject],DimensioningHelper.prototype,"_unitFormatter",void 0);export{DimensioningHelper as default};
|
|
2
|
+
//# sourceMappingURL=dimensioning-helper-7494fb28.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimensioning-helper-7494fb28.js","sources":["../../packages/configurator-core/public/fonts/lato_regular_sub.json"],"sourcesContent":["export default \"static/lato_regular_sub-d4b30187185acc59.json\""],"names":[],"mappings":"y7IAAe"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
System.register(["./roomle-dependency-injection-c12e4c00.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./TextGeometry-b57a793b.nomodule.js"],(function(t){var i,e,s,n,h,o,a,_,d,r,p,m,l,c,x,u,g,w,b,y,T,L,G;return{setters:[function(t){i=t.aG,e=t.w,s=t._,n=t.i,h=t.ah,o=t.aH,a=t.ad},function(t){_=t.O,d=t.a,r=t.h,p=t.w,m=t.br,l=t.B,c=t.z,x=t.Q,u=t.bc,g=t.K,w=t.u,b=t.G,y=t.b,T=t.b0,L=t.ad},function(t){G=t.T}],execute:function(){const z="component_dimensioning_plane_material",M="component_dimensioning_text_material";class j extends _{constructor(t){super(),this._label="",this._parameters={font:null,size:.1,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},this.topDown=!1,this._parameters.font=t,this._position=new d,this._initMaterials(),this._init(),this._update()}_initMaterials(){this._cacheHolder.materialCache.has(z)?this._planeMaterial=this._cacheHolder.materialCache.get(z):(this._planeMaterial=new r({color:16777215,side:p,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(z,this._planeMaterial)),this._cacheHolder.materialCache.has(M)?this._textMaterial=this._cacheHolder.materialCache.get(M):(this._textMaterial=new m({color:3618615}),this._cacheHolder.materialCache.set(M,this._textMaterial))}_init(){let t=new l;this._text=new c(t,this._textMaterial),this._text.userData.ignoreComponentRaycast=!0,this._text.name="text with background text "+this._label,this._plane=new c(t,this._planeMaterial),this._plane.userData.ignoreComponentRaycast=!0,this._plane.name="text with background plane "+this._label,this._textGeometry=new G(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this.add(this._text),this.add(this._plane)}update(t,i,e){this._position.copy(t),this._cameraPosition=e,this._label=i;const s=this.getWorldPosition(new d),n=this._cameraPosition.distanceTo(s),h=Math.max(.01,n/150),o=Math.max(5e-4,n/5e3);this._parameters.bevelThickness=o,this._parameters.bevelSize=o,this._parameters.size=h,this._textGeometry=new G(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this._update()}_update(){if(this.topDown){let t=new x;t.setFromAxisAngle(new d(-1,0,0),Math.PI/2),this._updateText(this._textGeometry,t,new d)}else if(this._updateText(this._textGeometry,new x,new d),this._cameraPosition){const t=this.getWorldPosition(new d),e=i(Math.atan2(this._cameraPosition.x-t.x,this._cameraPosition.z-t.z)-this.parent.rotation.y);this._text.rotation.y=e,this._plane.rotation.y=e}}_updateText(t,i,e){let s=new d;s.copy(this._position),e.x*=this._getXSign(),s.add(e);let n=t.boundingBox.getSize(new d);t.center(),this._text.position.copy(s),i&&this._text.quaternion.copy(i);let h=new u(n.x+.02,n.y+.02,32);h.center(),this._plane.geometry=h,this._plane.position.copy(s),i&&this._plane.quaternion.copy(i)}_getXSign(){return!this._cameraPosition||this._cameraPosition.x>=0?1:-1}dispose(){e(this)}}s([n],j.prototype,"_cacheHolder",void 0);class D{constructor(t){this._objectRotation=0,this._cameraPosition=new d,this._topDimensions=!1,this._initialized=new h,this._enabled=!1,this._dimensionsVisible=!1,this._dimensionLineGroup=new g,this._dimensionTextGroup=new _,this._creator_=t,this._lineMaterial=new w({color:3618615,linewidth:2});let i=new l;this._widthLine=new b(i,this._lineMaterial),this._widthLine.userData.ignoreComponentRaycast=!0,this._widthLine.name="dimension width line",this._dimensionLineGroup.add(this._widthLine),this._heightLine=new b(i,this._lineMaterial),this._heightLine.userData.ignoreComponentRaycast=!0,this._heightLine.name="dimension height line",this._dimensionLineGroup.add(this._heightLine),this._depthLine=new b(i,this._lineMaterial),this._depthLine.userData.ignoreComponentRaycast=!0,this._depthLine.name="dimension depth line",this._dimensionLineGroup.add(this._depthLine),this._planeMaterial=new r({color:16777215,side:p,opacity:.8,transparent:!0}),o.loadFont("static/lato_regular_sub-d4b30187185acc59.json").then(t=>{this._font=t,this._loaded()})}_loaded(){this.update(!1),this.addToObject(this._object),this.addToUiScene(this._uiScene),this._initialized.resolve()}_performUpdate(t){this._enabled&&(this._dimensions||t)&&this._font&&(this._updateHeight(),this._updateWidth(),this._updateDepth())}_updateWidth(){let t=new l,i=this._getWidthEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._widthLine.geometry.dispose(),this._widthLine.geometry=t;let s=i.getCenter(new d);this._widthText||(this._widthText=new j(this._font),this._dimensionTextGroup.add(this._widthText)),this._widthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.x);this._widthText.update(s,n,this._cameraPosition)}_updateHeight(){let t=new l,i=this._getHeightEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._heightLine.geometry.dispose(),this._heightLine.geometry=t;let s=i.getCenter(new d);this._heightText||(this._heightText=new j(this._font),this._dimensionTextGroup.add(this._heightText)),this._heightText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.y);this._heightText.update(s,n,this._cameraPosition)}_updateDepth(){let t=new l,i=this._getDepthEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._depthLine.geometry.dispose(),this._depthLine.geometry=t;let s=i.getCenter(new d);this._depthText||(this._depthText=new j(this._font),this._dimensionTextGroup.add(this._depthText)),this._depthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(-1e3*this._dimensions.z);this._depthText.update(s,n,this._cameraPosition)}updateSize(t){this._origin=a(t.origin),this._dimensionLineGroup.position.x=this._origin.x-this._object.position.x,this._dimensionLineGroup.position.y=this._origin.y-this._object.position.y,this._dimensionLineGroup.position.z=this._origin.z-this._object.position.z,this._dimensions=a(t.size);const i=this._dimensionLineGroup.localToWorld(new d);this._dimensionTextGroup.position.copy(i),this.update()}update(t=!1){this._enabled&&!this._dimensionsVisible&&(this._dimensionsVisible=!0,this._visibilityChangedCallback()),this._performUpdate(t)}addToObject(t){this._widthText&&this._widthLine&&this._heightText&&this._heightLine&&this._heightText&&this._heightLine&&t.add(this._dimensionLineGroup)}removeFromObject(t){t.remove(this._dimensionLineGroup),this.update()}addToUiScene(t){if(!(this._widthText&&this._heightText&&this._depthText&&this._object))return;const i=this._dimensionLineGroup.localToWorld(new d);this._dimensionTextGroup.position.copy(i),this._dimensionTextGroup.rotation.y=this._objectRotation,t.add(this._dimensionTextGroup),this.update()}removeFromUiScene(t){t.remove(this._dimensionTextGroup),this.update()}_getWidthEdge(){const t=this._getRotation();return t>Math.PI/2||t<-Math.PI/2?new T(new d(-.05,0,this._dimensions.z-.05),new d(this._dimensions.x+.05,0,this._dimensions.z-.05)):new T(new d(-.05,0,.05),new d(this._dimensions.x+.05,0,.05))}_getDepthEdge(){return this._getRotation()>0?new T(new d(.05+this._dimensions.x,0,.05),new d(.05+this._dimensions.x,0,this._dimensions.z-.05)):new T(new d(-.05,0,.05),new d(-.05,0,this._dimensions.z-.05))}_getHeightEdge(){const t=this._getRotation();return t>0&&t<Math.PI/2?new T(new d(-.05,0,.05),new d(-.05,this._dimensions.y+.05,.05)):t>Math.PI/2?new T(new d(-.05,0,this._dimensions.z-.05),new d(-.05,this._dimensions.y+.05,this._dimensions.z-.05)):t<-Math.PI/2?new T(new d(.05+this._dimensions.x,0,this._dimensions.z-.05),new d(.05+this._dimensions.x,this._dimensions.y+.05,this._dimensions.z-.05)):new T(new d(.05+this._dimensions.x,0,.05),new d(.05+this._dimensions.x,this._dimensions.y+.05,.05))}onDimensionsVisibilityChanged(t){this._onChange=t}enableTopDimensions(){this._topDimensions=!0,this.enableDimensions(),this._heightLine.visible=!1,this._heightText.visible=!1,this.update(!0)}disableTopDimensions(){this._topDimensions=!1,this._heightLine.visible=!0,this._heightText.visible=!0,this.disableDimensions()}enableDimensions(){this._enabled=!0,this.update(!0),this.addToObject(this._object),this.addToUiScene(this._uiScene)}disableDimensions(){this._enabled=!1,this._dimensionsVisible&&(this._dimensionsVisible=!1,this._visibilityChangedCallback()),this.removeFromUiScene(this._uiScene),this.removeFromObject(this._object)}_visibilityChangedCallback(){this._onChange&&this._onChange(this._dimensionsVisible)}_clear(){this._lineMaterial.dispose(),this._planeMaterial.dispose(),this._widthLine.geometry.dispose(),this._heightLine.geometry.dispose(),this._depthLine.geometry.dispose(),this._heightText.dispose(),this._heightText.dispose(),this._depthText.dispose()}getBoundingBox(){const t=new L;return t.expandByObject(this._widthLine),t.expandByObject(this._widthText),t.expandByObject(this._heightLine),t.expandByObject(this._heightText),t.expandByObject(this._depthLine),t.expandByObject(this._depthText),t}setVisibility(t){this._dimensionLineGroup&&this._dimensionTextGroup&&(this._dimensionLineGroup.visible=t,this._dimensionTextGroup.visible=t)}moveCameraStart(t){this.setVisibility(!1),this._cameraPosition=t,this.update()}moveCameraEnd(t){this.setVisibility(!0),this._cameraPosition=t,this.update()}clearScene(t){this._clear()}setObject(t,i=0){this._object=t,this._objectRotation=i}setUiScene(t){this._uiScene=t}isInitialized(){return this._initialized.wait()}areDimensionsEnabled(){return this._enabled}_getRotation(){const t=this._object.getWorldPosition(new d);return i(Math.atan2(this._cameraPosition.x-t.x,this._cameraPosition.z-t.z)-this._objectRotation)}}t("default",D),s([n],D.prototype,"_unitFormatter",void 0)}}}));
|
|
2
|
+
//# sourceMappingURL=dimensioning-helper-b9377b93.nomodule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimensioning-helper-b9377b93.nomodule.js","sources":["../../packages/configurator-core/public/fonts/lato_regular_sub.json"],"sourcesContent":["export default \"static/lato_regular_sub-d4b30187185acc59.json\""],"names":[],"mappings":"y4HAAe"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{S as ScriptLoader,M as Main}from"./script-loader-d3f78a09.js";import{aw as InputManager,D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a1 as getGUI,_ as __decorate,i as inject,m as CANVAS_ID,q as DynamicLightSettingLoader,r as PREDEFINED_LIGHTSETTING,w as dispose,b as RoomleDependencyInjection}from"./roomle-dependency-injection-1e356a73.js";import{C as CameraControl3D,L as LightSetting,S as SceneManager,T as TWEEN_FILE_NAME}from"./camera-behaviour-265f1725.js";import{a as Vector3,ad as Box3,ag as Euler,Q as Quaternion,A as AmbientLight,C as Color,aE as CAMERA_TYPE,aR as getGlbUrl,bz as WebGLRenderer,i as SRGBColorSpace,bn as BasicShadowMap,N as PerspectiveCamera,bM as download}from"./main-thread-to-worker-82b32425.js";import{D as DefaultLightSetting}from"./default-light-setting-f34982ae.js";import{G as GlbViewerCameraBehaviour}from"./glb-viewer-camera-behaviour-3ef8c6cf.js";import"./query-params-helper-68ed40a6.js";const INJECTABLES=[new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("glb-input-manager",class extends InputManager{},1),new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess)];class AdjustableCameraControl3D extends CameraControl3D{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,a,i){let n=new Vector3(-e.x/2,0,-e.z/2),s=new Vector3(e.x/2,e.y,e.z/2);this._boundingBox=new Box3(n,s);let o=new Euler(-Math.PI/2+a,r,0,"ZYX"),c=(new Quaternion).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(c),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class GLBViewerLightSetting extends LightSetting{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=getGUI();if(e&&this._ambientLight){let t=e.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(e=>{this._ambientLight.color=new Color(e)})}}}class GLBViewerSceneManager extends SceneManager{constructor(e,t){super(e,t,CANVAS_ID.GLB,CAMERA_TYPE.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(DynamicLightSettingLoader.createDynamicLightSettingSource(null,PREDEFINED_LIGHTSETTING.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new GLBViewerLightSetting(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new GlbViewerCameraBehaviour(new AdjustableCameraControl3D(this._creator_,this._getInputManager(),new Vector3(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const a=getGlbUrl(r);return a?this.loadGLB(a,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new Vector3(1,1,1),a){return this.clearScene(),new Promise((i,n)=>{this._loadGLB(e,new Vector3(0,0,0),0,void 0,r,void 0,void 0,a).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new Box3).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),i()},n)})}preparePerspectiveImage(e,t,r){return new Promise(a=>{var i,n;t||(t=1e3),r||(r=1e3),e||((e=new WebGLRenderer({antialias:!0})).setSize(t,r),e.outputColorSpace=SRGBColorSpace,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=BasicShadowMap);let s=this.cameraBehaviour.cameraControl.getCamera().clone();s instanceof PerspectiveCamera&&(s.aspect=t/r,s.updateProjectionMatrix()),null===(i=this._lightSetting)||void 0===i||i.removeFromScene();let o=new DefaultLightSetting(this._scene);e.render(this._scene,s);let c=e.domElement.toDataURL();e.domElement.toBlob(e=>{a({image:c,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(n=this._lightSetting)||void 0===n||n.addToScene()})}adjustCamera(e,t,r,a){if(this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D){let i=(new Box3).setFromObject(this._scene).getSize(new Vector3);this.cameraBehaviour.cameraControl.adjust(i,e,t,r,a),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),dispose(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new Box3).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}__decorate([inject],GLBViewerSceneManager.prototype,"_glbInputManager",void 0),__decorate([inject],GLBViewerSceneManager.prototype,"_rapiAccess",void 0);class GLBRenderWorker{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new WebGLRenderer({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=SRGBColorSpace}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new Vector3(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class RoomleGLBViewer{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(TWEEN_FILE_NAME,{id:"tween-js"})]).then(()=>{this._sceneManager=new GLBViewerSceneManager(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new Vector3(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let a=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new GLBRenderWorker(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(a.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{download("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:a,maxLightSources:i}=e;this._sceneManager.setEnvironmentMap(t,r,a,i)}}__decorate([inject],RoomleGLBViewer.prototype,"_rapiAccess",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_domHelper",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_scriptLoader",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_lifeCycleManager",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_initData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_globalInitData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_unitFormatter",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_idbManager",void 0);class GlbViewer extends Main{setupGlobals(){}setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new RoomleGLBViewer(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}}export{GlbViewer};
|
|
2
|
-
//# sourceMappingURL=glb-viewer-
|
|
1
|
+
import{S as ScriptLoader,M as Main}from"./script-loader-ef092985.js";import{aw as InputManager,D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a1 as getGUI,_ as __decorate,i as inject,m as CANVAS_ID,q as DynamicLightSettingLoader,r as PREDEFINED_LIGHTSETTING,w as dispose,b as RoomleDependencyInjection}from"./roomle-dependency-injection-56db2f22.js";import{C as CameraControl3D,L as LightSetting,S as SceneManager,T as TWEEN_FILE_NAME}from"./camera-behaviour-4d4e7e7c.js";import{a as Vector3,ad as Box3,ag as Euler,Q as Quaternion,A as AmbientLight,C as Color,aE as CAMERA_TYPE,aR as getGlbUrl,bz as WebGLRenderer,i as SRGBColorSpace,bn as BasicShadowMap,N as PerspectiveCamera,bM as download}from"./main-thread-to-worker-82b32425.js";import{D as DefaultLightSetting}from"./default-light-setting-ad52e6de.js";import{G as GlbViewerCameraBehaviour}from"./glb-viewer-camera-behaviour-21363fa3.js";import"./query-params-helper-68ed40a6.js";const INJECTABLES=[new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("glb-input-manager",class extends InputManager{},1),new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess)];class AdjustableCameraControl3D extends CameraControl3D{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,a,i){let n=new Vector3(-e.x/2,0,-e.z/2),s=new Vector3(e.x/2,e.y,e.z/2);this._boundingBox=new Box3(n,s);let o=new Euler(-Math.PI/2+a,r,0,"ZYX"),c=(new Quaternion).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(c),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class GLBViewerLightSetting extends LightSetting{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=getGUI();if(e&&this._ambientLight){let t=e.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(e=>{this._ambientLight.color=new Color(e)})}}}class GLBViewerSceneManager extends SceneManager{constructor(e,t){super(e,t,CANVAS_ID.GLB,CAMERA_TYPE.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(DynamicLightSettingLoader.createDynamicLightSettingSource(null,PREDEFINED_LIGHTSETTING.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new GLBViewerLightSetting(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new GlbViewerCameraBehaviour(new AdjustableCameraControl3D(this._creator_,this._getInputManager(),new Vector3(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const a=getGlbUrl(r);return a?this.loadGLB(a,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new Vector3(1,1,1),a){return this.clearScene(),new Promise((i,n)=>{this._loadGLB(e,new Vector3(0,0,0),0,void 0,r,void 0,void 0,a).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new Box3).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),i()},n)})}preparePerspectiveImage(e,t,r){return new Promise(a=>{var i,n;t||(t=1e3),r||(r=1e3),e||((e=new WebGLRenderer({antialias:!0})).setSize(t,r),e.outputColorSpace=SRGBColorSpace,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=BasicShadowMap);let s=this.cameraBehaviour.cameraControl.getCamera().clone();s instanceof PerspectiveCamera&&(s.aspect=t/r,s.updateProjectionMatrix()),null===(i=this._lightSetting)||void 0===i||i.removeFromScene();let o=new DefaultLightSetting(this._scene);e.render(this._scene,s);let c=e.domElement.toDataURL();e.domElement.toBlob(e=>{a({image:c,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(n=this._lightSetting)||void 0===n||n.addToScene()})}adjustCamera(e,t,r,a){if(this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D){let i=(new Box3).setFromObject(this._scene).getSize(new Vector3);this.cameraBehaviour.cameraControl.adjust(i,e,t,r,a),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),dispose(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new Box3).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}__decorate([inject],GLBViewerSceneManager.prototype,"_glbInputManager",void 0),__decorate([inject],GLBViewerSceneManager.prototype,"_rapiAccess",void 0);class GLBRenderWorker{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new WebGLRenderer({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=SRGBColorSpace}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new Vector3(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class RoomleGLBViewer{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(TWEEN_FILE_NAME,{id:"tween-js"})]).then(()=>{this._sceneManager=new GLBViewerSceneManager(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new Vector3(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let a=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new GLBRenderWorker(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(a.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{download("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:a,maxLightSources:i}=e;this._sceneManager.setEnvironmentMap(t,r,a,i)}}__decorate([inject],RoomleGLBViewer.prototype,"_rapiAccess",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_domHelper",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_scriptLoader",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_lifeCycleManager",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_initData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_globalInitData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_unitFormatter",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_idbManager",void 0);class GlbViewer extends Main{setupGlobals(){}setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new RoomleGLBViewer(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}}export{GlbViewer};
|
|
2
|
+
//# sourceMappingURL=glb-viewer-039ccdb1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glb-viewer-
|
|
1
|
+
{"version":3,"file":"glb-viewer-039ccdb1.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"+pRAAe"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./script-loader-
|
|
2
|
-
//# sourceMappingURL=glb-viewer-
|
|
1
|
+
System.register(["./script-loader-98a17bbb.nomodule.js","./roomle-dependency-injection-c12e4c00.nomodule.js","./camera-behaviour-1b0b7853.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./default-light-setting-7f113f35.nomodule.js","./glb-viewer-camera-behaviour-c43375cf.nomodule.js","./query-params-helper-712890e0.nomodule.js"],(function(e){var t,r,i,n,s,a,o,h,c,d,l,u,m,_,p,g,w,v,b,f,C,S,L,B,M,y,I,x,G,E,j,O,F;return{setters:[function(e){t=e.S,r=e.M},function(e){i=e.aw,n=e.D,s=e.L,a=e.R,o=e.a1,h=e._,c=e.i,d=e.m,l=e.q,u=e.r,m=e.w,_=e.b},function(e){p=e.C,g=e.L,w=e.S,v=e.T},function(e){b=e.a,f=e.ad,C=e.ag,S=e.Q,L=e.A,B=e.C,M=e.aE,y=e.aR,I=e.bz,x=e.i,G=e.bn,E=e.N,j=e.bM},function(e){O=e.D},function(e){F=e.G},function(){}],execute:function(){const D=[new n("script-loader",t),new n("glb-input-manager",class extends i{},1),new n("logger",s),new n("rapi-access",a)];class P extends p{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,i,n){let s=new b(-e.x/2,0,-e.z/2),a=new b(e.x/2,e.y,e.z/2);this._boundingBox=new f(s,a);let o=new C(-Math.PI/2+i,r,0,"ZYX"),h=(new S).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(h),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class z extends g{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new L(new B(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=o();if(e&&this._ambientLight){let t=e.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(e=>{this._ambientLight.color=new B(e)})}}}class A extends w{constructor(e,t){super(e,t,d.GLB,M.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(l.createDynamicLightSettingSource(null,u.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new z(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new F(new P(this._creator_,this._getInputManager(),new b(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const i=y(r);return i?this.loadGLB(i,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new b(1,1,1),i){return this.clearScene(),new Promise((n,s)=>{this._loadGLB(e,new b(0,0,0),0,void 0,r,void 0,void 0,i).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new f).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof P&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),n()},s)})}preparePerspectiveImage(e,t,r){return new Promise(i=>{var n,s;t||(t=1e3),r||(r=1e3),e||((e=new I({antialias:!0})).setSize(t,r),e.outputColorSpace=x,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=G);let a=this.cameraBehaviour.cameraControl.getCamera().clone();a instanceof E&&(a.aspect=t/r,a.updateProjectionMatrix()),null===(n=this._lightSetting)||void 0===n||n.removeFromScene();let o=new O(this._scene);e.render(this._scene,a);let h=e.domElement.toDataURL();e.domElement.toBlob(e=>{i({image:h,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(s=this._lightSetting)||void 0===s||s.addToScene()})}adjustCamera(e,t,r,i){if(this.cameraBehaviour.cameraControl instanceof P){let n=(new f).setFromObject(this._scene).getSize(new b);this.cameraBehaviour.cameraControl.adjust(n,e,t,r,i),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),m(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new f).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}h([c],A.prototype,"_glbInputManager",void 0),h([c],A.prototype,"_rapiAccess",void 0);class U{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new I({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=x}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new b(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class R{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(v,{id:"tween-js"})]).then(()=>{this._sceneManager=new A(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new b(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let i=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new U(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(i.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{j("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:i,maxLightSources:n}=e;this._sceneManager.setEnvironmentMap(t,r,i,n)}}h([c],R.prototype,"_rapiAccess",void 0),h([c],R.prototype,"_domHelper",void 0),h([c],R.prototype,"_scriptLoader",void 0),h([c],R.prototype,"_lifeCycleManager",void 0),h([c],R.prototype,"_initData",void 0),h([c],R.prototype,"_globalInitData",void 0),h([c],R.prototype,"_unitFormatter",void 0),h([c],R.prototype,"_idbManager",void 0),e("GlbViewer",class extends r{setupGlobals(){}setupDependencies(){_.setup(D),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new R(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}})}}}));
|
|
2
|
+
//# sourceMappingURL=glb-viewer-0fd5cc99.nomodule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glb-viewer-
|
|
1
|
+
{"version":3,"file":"glb-viewer-0fd5cc99.nomodule.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"yqPAAe"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{b as CameraBehaviour}from"./camera-behaviour-4d4e7e7c.js";class GlbViewerCameraBehaviour extends CameraBehaviour{get cameraControl(){return this._cameraControl}updateCameraOnItemLoaded(e){this.cameraControl.updateAndReset(e,!1)}}export{GlbViewerCameraBehaviour as G};
|
|
2
|
+
//# sourceMappingURL=glb-viewer-camera-behaviour-21363fa3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glb-viewer-camera-behaviour-21363fa3.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./camera-behaviour-
|
|
2
|
-
//# sourceMappingURL=glb-viewer-camera-behaviour-
|
|
1
|
+
System.register(["./camera-behaviour-1b0b7853.nomodule.js"],(function(e){var t;return{setters:[function(e){t=e.b}],execute:function(){e("G",class extends t{get cameraControl(){return this._cameraControl}updateCameraOnItemLoaded(e){this.cameraControl.updateAndReset(e,!1)}})}}}));
|
|
2
|
+
//# sourceMappingURL=glb-viewer-camera-behaviour-c43375cf.nomodule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glb-viewer-camera-behaviour-c43375cf.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{GlbViewer}from"./glb-viewer-039ccdb1.js";import"./script-loader-ef092985.js";import"./query-params-helper-68ed40a6.js";import"./main-thread-to-worker-82b32425.js";import"./roomle-dependency-injection-56db2f22.js";import"./camera-behaviour-4d4e7e7c.js";import"./default-light-setting-ad52e6de.js";import"./glb-viewer-camera-behaviour-21363fa3.js";(new GlbViewer).boot();
|
|
2
|
+
//# sourceMappingURL=glb-viewer-main-ca829f73.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glb-viewer-main-ca829f73.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./glb-viewer-
|
|
1
|
+
System.register(["./glb-viewer-0fd5cc99.nomodule.js","./script-loader-98a17bbb.nomodule.js","./query-params-helper-712890e0.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./roomle-dependency-injection-c12e4c00.nomodule.js","./camera-behaviour-1b0b7853.nomodule.js","./default-light-setting-7f113f35.nomodule.js","./glb-viewer-camera-behaviour-c43375cf.nomodule.js"],(function(){var e;return{setters:[function(n){e=n.GlbViewer},function(){},function(){},function(){},function(){},function(){},function(){},function(){}],execute:function(){(new e).boot()}}}));
|
|
2
2
|
//# sourceMappingURL=glb-viewer-main.nomodule.js.map
|
package/lib/legacy/{banana-for-scale-18be7655.legacy.js → banana-for-scale-ade37173.legacy.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./roomle-dependency-injection-
|
|
2
|
-
//# sourceMappingURL=banana-for-scale-
|
|
1
|
+
System.register(["./roomle-dependency-injection-3542b35a.legacy.js","./main-thread-to-worker-63c62382.legacy.js"],(function(e){var n,t,a,s,i;return{setters:[function(e){n=e.aI,t=e._,a=e.i},function(e){s=e.g,i=e.a}],execute:function(){class c extends n{setScene(e){this._scene=e,this._staticItemLoader.loadGLB(s()+"static/banana_div2-1351c98ec2986be1.glb").then(e=>{this._banana=e.scene,this.updateBounds(null)})}updateBounds(e){if(e&&(this._bounds=e),this._bounds){if(this._banana){const e=this._bounds.getSize(new i),n=this._bounds.getCenter(new i).clone();n.x-=e.x/2+.18,n.z+=e.z/2+.05,n.y=0;let t=.03;this._banana.scale.copy(new i(t,t,t)),this._banana.rotation.y=.6,this._banana.position.copy(n)}this._scene.children.includes(this._banana)||this.addToScene()}}clearScene(e,n){super.clearScene(e,n),this.removeFromScene()}addToScene(){this._scene&&this._banana&&this._scene.add(this._banana)}removeFromScene(){this._scene&&this._banana&&this._scene.remove(this._banana)}}e("default",c),t([a],c.prototype,"_staticItemLoader",void 0)}}}));
|
|
2
|
+
//# sourceMappingURL=banana-for-scale-ade37173.legacy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banana-for-scale-
|
|
1
|
+
{"version":3,"file":"banana-for-scale-ade37173.legacy.js","sources":["../../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"yTAAe"}
|