{"version":3,"file":"vendor.openbim-components-cc83c03e.67687b6c680dfb2c.bundle.js","mappings":"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","sources":["webpack://client-app/./node_modules/openbim-components/src/fragments/FragmentExploder/index.js","webpack://client-app/./node_modules/openbim-components/src/fragments/FragmentHider/index.js","webpack://client-app/./node_modules/openbim-components/src/fragments/FragmentHighlighter/index.js"],"sourcesContent":["import * as THREE from \"three\";\r\nimport { Component, UIElement, Event } from \"../../base-types\";\r\nimport { toCompositeID } from \"../../utils\";\r\nimport { Button } from \"../../ui\";\r\nimport { ToolComponent } from \"../../core\";\r\nimport { FragmentClassifier } from \"../FragmentClassifier\";\r\nimport { FragmentManager } from \"../FragmentManager\";\r\n// TODO: Clean up and document\r\nexport class FragmentExploder extends Component {\r\n get() {\r\n return this._explodedFragments;\r\n }\r\n constructor(components) {\r\n super(components);\r\n this.enabled = false;\r\n this.height = 10;\r\n this.groupName = \"storeys\";\r\n this.uiElement = new UIElement();\r\n /** {@link Disposable.onDisposed} */\r\n this.onDisposed = new Event();\r\n this._explodedFragments = new Set();\r\n components.tools.add(FragmentExploder.uuid, this);\r\n if (components.uiEnabled) {\r\n this.setupUI(components);\r\n }\r\n }\r\n async dispose() {\r\n this._explodedFragments.clear();\r\n this.uiElement.dispose();\r\n await this.onDisposed.trigger(FragmentExploder.uuid);\r\n this.onDisposed.reset();\r\n }\r\n explode() {\r\n this.enabled = true;\r\n this.update();\r\n }\r\n reset() {\r\n this.enabled = false;\r\n this.update();\r\n }\r\n update() {\r\n const classifier = this.components.tools.get(FragmentClassifier);\r\n const fragments = this.components.tools.get(FragmentManager);\r\n const factor = this.enabled ? 1 : -1;\r\n let i = 0;\r\n const systems = classifier.get();\r\n const groups = systems[this.groupName];\r\n const mergedIDHeightMap = {};\r\n const yTransform = new THREE.Matrix4();\r\n for (const groupName in groups) {\r\n yTransform.elements[13] = i * factor * this.height;\r\n for (const fragID in groups[groupName]) {\r\n const fragment = fragments.list[fragID];\r\n const customID = groupName + fragID;\r\n if (!fragment) {\r\n continue;\r\n }\r\n if (this.enabled && this._explodedFragments.has(customID)) {\r\n continue;\r\n }\r\n if (!this.enabled && !this._explodedFragments.has(customID)) {\r\n continue;\r\n }\r\n if (this.enabled) {\r\n this._explodedFragments.add(customID);\r\n }\r\n else {\r\n this._explodedFragments.delete(customID);\r\n }\r\n if (fragment.blocks.count === 1) {\r\n // For instanced fragments\r\n const ids = groups[groupName][fragID];\r\n for (const id of ids) {\r\n const tempMatrix = new THREE.Matrix4();\r\n const { instanceID } = fragment.getInstanceAndBlockID(id);\r\n fragment.getInstance(instanceID, tempMatrix);\r\n tempMatrix.premultiply(yTransform);\r\n fragment.mesh.setMatrixAt(instanceID, tempMatrix);\r\n const composites = fragment.composites[id];\r\n if (composites) {\r\n for (let i = 1; i < composites; i++) {\r\n const idNum = parseInt(id, 10);\r\n const compID = toCompositeID(idNum, i);\r\n const { instanceID } = fragment.getInstanceAndBlockID(compID);\r\n fragment.getInstance(instanceID, tempMatrix);\r\n tempMatrix.premultiply(yTransform);\r\n fragment.mesh.setMatrixAt(instanceID, tempMatrix);\r\n }\r\n }\r\n }\r\n fragment.mesh.instanceMatrix.needsUpdate = true;\r\n }\r\n else {\r\n if (!mergedIDHeightMap[fragID]) {\r\n mergedIDHeightMap[fragID] = {};\r\n }\r\n const ids = groups[groupName][fragID];\r\n for (const id of ids) {\r\n mergedIDHeightMap[fragID][id] = i * factor * this.height;\r\n }\r\n }\r\n }\r\n i++;\r\n }\r\n const v = new THREE.Vector3();\r\n // Update merged fragments\r\n for (const fragID in mergedIDHeightMap) {\r\n const heights = mergedIDHeightMap[fragID];\r\n const fragment = fragments.list[fragID];\r\n const geometry = fragment.mesh.geometry;\r\n const position = geometry.attributes.position;\r\n for (let i = 0; i < geometry.index.count; i++) {\r\n const index = geometry.index.array[i];\r\n const blockID = geometry.attributes.blockID.array[index];\r\n const id = fragment.getItemID(0, blockID);\r\n const height = heights[id];\r\n if (height === undefined)\r\n continue;\r\n yTransform.elements[13] = height;\r\n const x = position.array[index * 3];\r\n const y = position.array[index * 3 + 1];\r\n const z = position.array[index * 3 + 2];\r\n v.set(x, y, z);\r\n v.applyMatrix4(yTransform);\r\n position.setXYZ(index, v.x, v.y, v.z);\r\n }\r\n position.needsUpdate = true;\r\n }\r\n }\r\n setupUI(components) {\r\n const main = new Button(components);\r\n this.uiElement.set({ main });\r\n main.tooltip = \"Explode\";\r\n main.materialIcon = \"splitscreen\";\r\n main.onClick.add(async () => {\r\n if (this.enabled) {\r\n this.reset();\r\n }\r\n else {\r\n this.explode();\r\n }\r\n });\r\n }\r\n}\r\nFragmentExploder.uuid = \"d260618b-ce88-4c7d-826c-6debb91de3e2\";\r\nToolComponent.libraryUUIDs.add(FragmentExploder.uuid);\r\n//# sourceMappingURL=index.js.map","import { FragmentManager } from \"../FragmentManager\";\r\nimport { ScreenCuller, ToolComponent } from \"../../core\";\r\nimport { Component, UIElement, Event, } from \"../../base-types\";\r\nimport { Button, CheckboxInput, FloatingWindow, SimpleUIComponent, TextInput, } from \"../../ui\";\r\nimport { IfcPropertiesFinder } from \"../../ifc\";\r\nexport class FragmentHider extends Component {\r\n constructor(components) {\r\n super(components);\r\n /** {@link Disposable.onDisposed} */\r\n this.onDisposed = new Event();\r\n this.enabled = true;\r\n this.uiElement = new UIElement();\r\n this._localStorageID = \"FragmentHiderCache\";\r\n this._updateVisibilityOnFound = true;\r\n this._filterCards = {};\r\n this.components.tools.add(FragmentHider.uuid, this);\r\n if (components.uiEnabled) {\r\n this.setupUI(components);\r\n }\r\n }\r\n setupUI(components) {\r\n const mainWindow = new FloatingWindow(components);\r\n mainWindow.title = \"Filters\";\r\n mainWindow.visible = false;\r\n components.ui.add(mainWindow);\r\n mainWindow.domElement.style.width = \"530px\";\r\n mainWindow.domElement.style.height = \"400px\";\r\n const mainButton = new Button(components, {\r\n materialIconName: \"filter_alt\",\r\n tooltip: \"Visibility filters\",\r\n });\r\n mainButton.onClick.add(() => {\r\n this.hideAllFinders();\r\n mainWindow.visible = !mainWindow.visible;\r\n });\r\n const topButtonContainerHtml = `
`;\r\n const topButtonContainer = new SimpleUIComponent(components, topButtonContainerHtml);\r\n const createButton = new Button(components, {\r\n materialIconName: \"add\",\r\n });\r\n createButton.onClick.add(() => this.createStyleCard());\r\n topButtonContainer.addChild(createButton);\r\n mainWindow.addChild(topButtonContainer);\r\n this.uiElement.set({ window: mainWindow, main: mainButton });\r\n }\r\n async dispose() {\r\n this.uiElement.dispose();\r\n await this.onDisposed.trigger(FragmentHider.uuid);\r\n this.onDisposed.reset();\r\n }\r\n set(visible, items) {\r\n const fragments = this.components.tools.get(FragmentManager);\r\n if (!items) {\r\n for (const id in fragments.list) {\r\n const fragment = fragments.list[id];\r\n if (fragment) {\r\n fragment.setVisibility(visible);\r\n this.updateCulledVisibility(fragment);\r\n }\r\n }\r\n return;\r\n }\r\n for (const fragID in items) {\r\n const ids = items[fragID];\r\n const fragment = fragments.list[fragID];\r\n fragment.setVisibility(visible, ids);\r\n this.updateCulledVisibility(fragment);\r\n }\r\n }\r\n isolate(items) {\r\n this.set(false);\r\n this.set(true, items);\r\n }\r\n get() { }\r\n async update() {\r\n this._updateVisibilityOnFound = false;\r\n for (const id in this._filterCards) {\r\n const { finder } = this._filterCards[id];\r\n await finder.find();\r\n }\r\n this._updateVisibilityOnFound = true;\r\n this.updateQueries();\r\n }\r\n async loadCached() {\r\n const serialized = localStorage.getItem(this._localStorageID);\r\n if (!serialized)\r\n return;\r\n const filters = JSON.parse(serialized);\r\n for (const filter of filters) {\r\n this.createStyleCard(filter);\r\n }\r\n await this.update();\r\n }\r\n updateCulledVisibility(fragment) {\r\n const culler = this.components.tools.get(ScreenCuller);\r\n const colorMeshes = culler.get();\r\n const culled = colorMeshes.get(fragment.id);\r\n if (culled) {\r\n culled.count = fragment.mesh.count;\r\n }\r\n }\r\n createStyleCard(config) {\r\n const filterCard = new SimpleUIComponent(this.components);\r\n if (config && config.id.length) {\r\n filterCard.id = config.id;\r\n }\r\n const { id } = filterCard;\r\n filterCard.domElement.className = `m-4 p-4 border-1 border-solid border-[#3A444E] rounded-md flex flex-col`;\r\n filterCard.domElement.innerHTML = `\r\n