提交
This commit is contained in:
		| @ -91,7 +91,7 @@ export default { | |||||||
|     cutFill: "土方分析", |     cutFill: "土方分析", | ||||||
|     globalContour: "全局等高线", |     globalContour: "全局等高线", | ||||||
|     contour: "等高线", |     contour: "等高线", | ||||||
|     clear: "清除", |     clearAnalysis: "清除", | ||||||
|   }, |   }, | ||||||
|   measure: { |   measure: { | ||||||
|     projectionArea: "投影面积", |     projectionArea: "投影面积", | ||||||
|  | |||||||
							
								
								
									
										
											BIN
										
									
								
								src/renderer/src/assets/images/second/clearAnalysis.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/renderer/src/assets/images/second/clearAnalysis.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 844 B | 
| @ -10,14 +10,15 @@ import type { | |||||||
| const pendingRequests = new Map<string, AbortController>() | const pendingRequests = new Map<string, AbortController>() | ||||||
| let baseURL: any | let baseURL: any | ||||||
| if (window && window.process && window.process.type === 'renderer') { | if (window && window.process && window.process.type === 'renderer') { | ||||||
|   baseURL = localStorage.getItem('ip') || 'http://192.168.110.25:8848' || 'http://127.0.0.1:8808' |   // baseURL = localStorage.getItem('ip') ||'http://192.168.110.25:8848'|| 'http://127.0.0.1:8808' | ||||||
|  |   baseURL = 'http://127.0.0.1:8848' | ||||||
| } else { | } else { | ||||||
|   baseURL = 'http://192.168.110.25:8848' |   baseURL = 'http://192.168.110.25:8848' | ||||||
| } | } | ||||||
|  |  | ||||||
| // 创建自定义配置的axios实例 | // 创建自定义配置的axios实例 | ||||||
| const service: AxiosInstance = axios.create({ | const service: AxiosInstance = axios.create({ | ||||||
|   baseURL: 'http://192.168.110.25:8848', |   baseURL: baseURL, | ||||||
|   timeout: 10000, |   timeout: 10000, | ||||||
|   headers: { |   headers: { | ||||||
|     'Content-Type': 'application/json', |     'Content-Type': 'application/json', | ||||||
|  | |||||||
| @ -1,6 +1,13 @@ | |||||||
| export const initMapData = async (type, data) => { | export const initMapData = async (type, data) => { | ||||||
|   let entityObject |   let entityObject | ||||||
|   let options |   let options | ||||||
|  |   let baseURL | ||||||
|  |   if (window && window.process && window.process.type === 'renderer') { | ||||||
|  |     // baseURL = localStorage.getItem('ip') ||'http://192.168.110.25:8848'|| 'http://127.0.0.1:8808' | ||||||
|  |     baseURL = 'http://127.0.0.1:8848' | ||||||
|  |   } else { | ||||||
|  |     baseURL = 'http://192.168.110.25:8848' | ||||||
|  |   } | ||||||
|   switch (type) { |   switch (type) { | ||||||
|     case 'groundText': |     case 'groundText': | ||||||
|       entityObject = new YJ.Obj.GroundText(window.earth, data) |       entityObject = new YJ.Obj.GroundText(window.earth, data) | ||||||
| @ -40,20 +47,21 @@ export const initMapData = async (type, data) => { | |||||||
|       entityObject = new YJ.Obj.ModelObject(window.earth, data) |       entityObject = new YJ.Obj.ModelObject(window.earth, data) | ||||||
|       break |       break | ||||||
|     case 'terrain': |     case 'terrain': | ||||||
|       data.host = 'http://192.168.110.25:8848' |       data.host = baseURL | ||||||
|       entityObject = new YJ.Obj.Terrain(window.earth, data) |       entityObject = new YJ.Obj.Terrain(window.earth, data) | ||||||
|       break |       break | ||||||
|     case 'layer': |     case 'layer': | ||||||
|       data.host = 'http://192.168.110.25:8848' |       data.host = baseURL | ||||||
|  |       console.log('data',data) | ||||||
|       entityObject = new YJ.Obj.Layer(window.earth, data) |       entityObject = new YJ.Obj.Layer(window.earth, data) | ||||||
|       break |       break | ||||||
|     case 'tileset': |     case 'tileset': | ||||||
|       data.host = 'http://192.168.110.25:8848' |       data.host = baseURL | ||||||
|       entityObject = new YJ.Obj.Tileset(window.earth, data) |       entityObject = new YJ.Obj.Tileset(window.earth, data) | ||||||
|  |  | ||||||
|       entityObject.load((res) => { |       entityObject.load((res) => { | ||||||
|         // 等模型加载完后再加载压平模型 |         // 等模型加载完后再加载压平模型 | ||||||
|         Array.from((window as any).pressModelMap.keys()).forEach((key:any) => { |         Array.from((window as any).pressModelMap.keys()).forEach((key: any) => { | ||||||
|           if (key.indexOf("_" + data.id) > -1) { |           if (key.indexOf("_" + data.id) > -1) { | ||||||
|             const nodes = (window as any).pressModelMap.get(key); |             const nodes = (window as any).pressModelMap.get(key); | ||||||
|             if (nodes) { |             if (nodes) { | ||||||
| @ -61,7 +69,7 @@ export const initMapData = async (type, data) => { | |||||||
|                 // nodeType[nodes.source_type].render(nodes); |                 // nodeType[nodes.source_type].render(nodes); | ||||||
|                 const flatData = JSON.parse(nodes.params) |                 const flatData = JSON.parse(nodes.params) | ||||||
|                 const entity = window.earth.entityMap.get(flatData.modelId).entity |                 const entity = window.earth.entityMap.get(flatData.modelId).entity | ||||||
|                 let flat:any = new YJ.Analysis.Flat(window.earth, entity, { |                 let flat: any = new YJ.Analysis.Flat(window.earth, entity, { | ||||||
|                   positions: flatData.positions, |                   positions: flatData.positions, | ||||||
|                   height: flatData.height, |                   height: flatData.height, | ||||||
|                   name: nodes.sourceName |                   name: nodes.sourceName | ||||||
| @ -74,16 +82,16 @@ export const initMapData = async (type, data) => { | |||||||
|  |  | ||||||
|       }) |       }) | ||||||
|       break |       break | ||||||
|       case 'path': |     case 'path': | ||||||
|       entityObject = new YJ.Obj.TrajectoryMotion(window.earth, data) |       entityObject = new YJ.Obj.TrajectoryMotion(window.earth, data) | ||||||
|       break |       break | ||||||
|       case 'wallStereoscopic': |     case 'wallStereoscopic': | ||||||
|       entityObject = new YJ.Obj.WallStereoscopic(window.earth, data) |       entityObject = new YJ.Obj.WallStereoscopic(window.earth, data) | ||||||
|       break |       break | ||||||
|       case 'diffuseScan': |     case 'diffuseScan': | ||||||
|       entityObject = new YJ.Obj.CircleDiffuse(window.earth, data) |       entityObject = new YJ.Obj.CircleDiffuse(window.earth, data) | ||||||
|       break |       break | ||||||
|       case 'radarScan': |     case 'radarScan': | ||||||
|       entityObject = new YJ.Obj.RadarScan(window.earth, data) |       entityObject = new YJ.Obj.RadarScan(window.earth, data) | ||||||
|       break |       break | ||||||
|     default: |     default: | ||||||
|  | |||||||
| @ -97,7 +97,7 @@ const menuList: any = ref([ | |||||||
|       'cutFill', |       'cutFill', | ||||||
|       'contour', |       'contour', | ||||||
|       'globalContour', |       'globalContour', | ||||||
|       'clear' |       'clearAnalysis' | ||||||
|     ] |     ] | ||||||
|   }, |   }, | ||||||
|   // 测量 |   // 测量 | ||||||
|  | |||||||
| @ -245,7 +245,7 @@ const methodMap = { | |||||||
|     }) |     }) | ||||||
|   }, |   }, | ||||||
|   //分析清除 |   //分析清除 | ||||||
|   clear() { |   clearAnalysis() { | ||||||
|     YJ.Analysis.Clear() |     YJ.Analysis.Clear() | ||||||
|   }, |   }, | ||||||
|   //----------------工具------------------ |   //----------------工具------------------ | ||||||
|  | |||||||
| @ -36,14 +36,40 @@ export const useRightOperate = () => { | |||||||
|     } |     } | ||||||
|     ipcRenderer.send('open-directory-dialog', options); |     ipcRenderer.send('open-directory-dialog', options); | ||||||
|     // 监听主进程返回的结果 |     // 监听主进程返回的结果 | ||||||
|  |     //@ts-ignore | ||||||
|     ipcRenderer.once('selectedItem', async (event, filePaths) => { |     ipcRenderer.once('selectedItem', async (event, filePaths) => { | ||||||
|       if (filePaths.length > 0) { |       if (filePaths.length > 0) { | ||||||
|         let id = new YJ.Tools().randomString() |         let id = new YJ.Tools().randomString() | ||||||
|  |  | ||||||
|  |  | ||||||
|  |         // 检查文件名是否有效 | ||||||
|  |         if (typeof filePaths[0] !== 'string' || filePaths[0].trim() === '') { | ||||||
|  |           return false; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         // 获取最后一个点的位置 | ||||||
|  |         const lastDotIndex = filePaths[0].lastIndexOf('.'); | ||||||
|  |  | ||||||
|  |         // 如果没有点或者点是最后一个字符,则不是有效的文件后缀 | ||||||
|  |         if (lastDotIndex === -1 || lastDotIndex === filePaths[0].length - 1) { | ||||||
|  |           return false; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         // 提取后缀并转换为小写进行比较 | ||||||
|  |         const extension = filePaths[0].slice(lastDotIndex + 1).toLowerCase(); | ||||||
|  |  | ||||||
|  |         let params2:any = {} | ||||||
|  |         if(extension === 'mbtiles') { | ||||||
|  |           params2.alpha = 1 | ||||||
|  |           params2.brightness = 1 | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |  | ||||||
|         let params: any = { |         let params: any = { | ||||||
|           id: id, |           id: id, | ||||||
|           sourcePath: filePaths[0], |           sourcePath: filePaths[0], | ||||||
|           parentId: parentId, |           parentId: parentId, | ||||||
|           params: '', |           params: JSON.stringify(params2), | ||||||
|         } |         } | ||||||
|         // filePaths[0].split('\\').pop() |         // filePaths[0].split('\\').pop() | ||||||
|         let res = await TreeApi.addModelSource(params) |         let res = await TreeApi.addModelSource(params) | ||||||
| @ -54,25 +80,16 @@ export const useRightOperate = () => { | |||||||
|             type: 'success' |             type: 'success' | ||||||
|           }) |           }) | ||||||
|           res.data.id = id |           res.data.id = id | ||||||
|           if (res.data.params) { |           let params = JSON.parse(res.data.params) | ||||||
|             let params = JSON.parse(res.data.params) |           let detail = JSON.parse(res.data.detail) | ||||||
|             if (!params.id) { |           if (!params.id) { | ||||||
|               params.id = res.data.id |             params.id = res.data.id | ||||||
|             } |  | ||||||
|             initMapData(res.data.sourceType, params) |  | ||||||
|           } |           } | ||||||
|           else { |           if (!params.name) { | ||||||
|             //@ts-ignore |             params.name = res.data.sourceName | ||||||
|             if (res.data.detail) { |  | ||||||
|               //@ts-ignore |  | ||||||
|               let detail = JSON.parse(res.data.detail) |  | ||||||
|               if (!detail.id) { |  | ||||||
|                 detail.id = res.data.id |  | ||||||
|               } |  | ||||||
|               initMapData(res.data.sourceType, detail) |  | ||||||
|             } |  | ||||||
|           } |           } | ||||||
|           cusAddNodes(window.treeObj, params.parentId, [res.data]) |           initMapData(res.data.sourceType, {...detail, ...params}) | ||||||
|  |           cusAddNodes(window.treeObj, params.parentId, [{...detail, ...params}]) | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     }); |     }); | ||||||
| @ -196,7 +213,7 @@ export const useRightOperate = () => { | |||||||
|       .then(async () => { |       .then(async () => { | ||||||
|         let selectNodes = getSelectedNodes(window.treeObj) |         let selectNodes = getSelectedNodes(window.treeObj) | ||||||
|         let source_ids = cusRemoveNode(window.treeObj, selectNodes) |         let source_ids = cusRemoveNode(window.treeObj, selectNodes) | ||||||
|         const res = await TreeApi.removeDirectory({ ids:source_ids }) |         const res = await TreeApi.removeDirectory({ ids: source_ids }) | ||||||
|         if (res.code == 0 || res.code == 200) { |         if (res.code == 0 || res.code == 200) { | ||||||
|           ElMessage({ |           ElMessage({ | ||||||
|             message: '删除成功', |             message: '删除成功', | ||||||
|  | |||||||
| @ -238,7 +238,7 @@ export const useTree = () => { | |||||||
|           height: params.height, |           height: params.height, | ||||||
|           name: treeNode.sourceName |           name: treeNode.sourceName | ||||||
|         }) |         }) | ||||||
|         (window as any).pressModelEntities.set(treeNode.id, entityObject) |           (window as any).pressModelEntities.set(treeNode.id, entityObject) | ||||||
|       } |       } | ||||||
|  |  | ||||||
|     } else { |     } else { | ||||||
| @ -489,25 +489,20 @@ export const useTree = () => { | |||||||
|   const initTreeCallBack = () => { |   const initTreeCallBack = () => { | ||||||
|     if (window.earth) { |     if (window.earth) { | ||||||
|       for (let i = 0; i < zNodes.value.length; i++) { |       for (let i = 0; i < zNodes.value.length; i++) { | ||||||
|         if (zNodes.value[i].params) { |         if(zNodes.value[i].sourceType === 'directory') { | ||||||
|           let params = JSON.parse(zNodes.value[i].params) |           continue | ||||||
|           if (!params.id) { |  | ||||||
|             params.id = zNodes.value[i].id |  | ||||||
|           } |  | ||||||
|           initMapData(zNodes.value[i].sourceType, params) |  | ||||||
|  |  | ||||||
|         } |         } | ||||||
|         else { |         //@ts-ignore | ||||||
|           //@ts-ignore |         let params = JSON.parse(zNodes.value[i].params||'{}') | ||||||
|           if (zNodes.value[i].detail) { |         //@ts-ignore | ||||||
|             //@ts-ignore |         let detail = JSON.parse(zNodes.value[i].detail||'{}') | ||||||
|             let detail = JSON.parse(zNodes.value[i].detail) |         if (!params.id) { | ||||||
|             if (!detail.id) { |           params.id = zNodes.value[i].id | ||||||
|               detail.id = zNodes.value[i].id |  | ||||||
|             } |  | ||||||
|             initMapData(zNodes.value[i].sourceType, detail) |  | ||||||
|           } |  | ||||||
|         } |         } | ||||||
|  |         if (!params.name) { | ||||||
|  |           params.name = zNodes.value[i].sourceName | ||||||
|  |         } | ||||||
|  |         initMapData(zNodes.value[i].sourceType, { ...detail, ...params }) | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user