| | |
| | | }; |
| | | const handleCheck = (checkedNodesData, checkedKeysData) => { |
| | | const filteredNodes = checkedKeysData.checkedNodes.filter(node => node.level === 3); |
| | | checkedNodes.value = checkedNodesData.children; |
| | | checkedNodes.value = filteredNodes |
| | | checkedKeys.value = filteredNodes.map(node => node.id); |
| | | coverData.value = filteredNodes; |
| | | emit('update:coverData', coverData.value); |
| | |
| | | } |
| | | }; |
| | | // 定位按钮事件 |
| | | |
| | | const handleLocation = node => { |
| | | const currentCheckedKeys = [...checkedKeys.value]; |
| | | const currentCheckedNodes = [...checkedNodes.value]; |
| | |
| | | initMap(); |
| | | cesiumContextMenu(); |
| | | getdataFolderApi(); |
| | | |
| | | // 新增:监听定位事件 |
| | | // 监听定位事件 |
| | | EventBus.on('focusOnNode', (nodeData) => { |
| | | focusOnNode(nodeData); |
| | | }); |
| | | |
| | | EventBus.on('deleteMapEntityById', deleteMapEntityById); |
| | | EventBus.on('deleteMapEntitiesByFolderId', deleteMapEntitiesByFolderId); |
| | | }); |
| | | |
| | | // 新增:定位到指定节点 |
| | | //定位到指定节点 |
| | | const focusOnNode = (nodeData) => { |
| | | if (!viewer || !nodeData?.geo_data) return; |
| | | // 解析节点坐标 |
| | |
| | | multiple: 4, // 缩放倍数 |
| | | pitch: -90 |
| | | }); |
| | | |
| | | }; |
| | | onBeforeUnmount(() => { |
| | | destroyMap(); |