From cf80a521d8300ab885aa213d90401b5e461246e6 Mon Sep 17 00:00:00 2001 From: 少年 <1392120328@qq.com> Date: 星期三, 31 一月 2024 14:37:45 +0800 Subject: [PATCH] 11 --- src/components/leftMenu/sousuo.vue | 431 ++++++++++++++++++++++++----------------------- src/utils/map.js | 30 --- src/components/sideMenu/layerMenu/layerPanel.vue | 53 ++--- src/components/sideMenu/sliderAlpha/alpha.vue | 6 4 files changed, 246 insertions(+), 274 deletions(-) diff --git a/src/components/leftMenu/sousuo.vue b/src/components/leftMenu/sousuo.vue index a7740c9..6a81383 100644 --- a/src/components/leftMenu/sousuo.vue +++ b/src/components/leftMenu/sousuo.vue @@ -282,6 +282,100 @@ rectangle.maxy > 31.182515322 && (rectangle.maxy = 31.182515322); return `RECT(${rectangle.minx} ${rectangle.miny},${rectangle.maxx} ${rectangle.maxy})`; }, + getPoi() { + axios + .get(common.poiserve, { + params: { + request: "GdPoi", + keywords: this.poi_text, + output: "json", + coord: "cgcs2000", + offset: 20, + page: 1, + }, + }) + .then((res) => { + // 楂樺痉 + if (res.data.status == 1) { + res.data.pois && + res.data.pois + .filter((item) => { + var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g"); + return ( + item.pname.includes("鍖椾含") && + item.name.includes(this.poi_text) && + !reg.test(item.typecode) + ); + }) + .forEach((val) => { + let poiarr = val.location.split(","); + let poi = { + lon: parseFloat(poiarr[0]), + lat: parseFloat(poiarr[1]), + }; + let obj = { + adcode: val.adcode, + address: val.address, + adname: val.area, + citycode: val.citycode, + cityname: val.cityname, + id: val.uid, + lat: poi.lat, + lng: poi.lon, + name: val.name, + pcode: val.pcode, + pname: val.province, + type: val.type, + typecode: val.typecode, + }; + Allresults.push(obj); + }); + } + this.total = Allresults.length; + this.poiList = Allresults; + this.showList = true; + }); + }, + getData() { + axios + .post(common.poiserve2, { + adcode: "110115", + address: { + name: "", + type: "", + }, + adname: "澶у叴鍖�", + cityname: "鍖椾含甯�", + name: { + name: this.poi_text, + type: "", + }, + page: 1, + perPageCount: 20, + pcode: "110000", + pname: "", + resType: "", + }) + .then((res) => { + if (res.status == 200) { + res.data.data.res && + res.data.data.res + .filter((item) => { + // 鍒ゆ柇鍦板潡鏄惁鏈夋眽瀛� + var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g"); + return ( + item.name.includes(this.poi_text) && reg.test(item.typecode) + ); + }) + .forEach((val) => { + Allresults.push(val); + }); + } + this.total = Allresults.length; + this.poiList = Allresults; + this.showList = true; + }); + }, search() { if (this.poi_text === "") { this.poiList = []; @@ -292,221 +386,136 @@ this.poiList = []; switch (this.select) { case "鍏ㄩ儴": - axios - .all([ - // 115鎺ュ彛锛堝彲鏌ュ湴鍧楀悕锛� - axios.post(common.poiserve2, { - adcode: "110115", - address: { - name: "", - type: "", - }, - adname: "澶у叴鍖�", - cityname: "鍖椾含甯�", - name: { - name: this.poi_text, - type: "", - }, - page: 1, - perPageCount: 20, - pcode: "110000", - pname: "", - resType: "", - }), - // // 甯傜骇骞冲彴锛堢櫨搴︼細浼氭煡鍒板鍦帮級 - // axios.get(common.poiserve, { - // params: { - // request: "bdPoi", - // query: this.poi_text, - // output: "json", - // coord: "cgcs2000", - // page_num: 0, - // page_size: 20, - // }, - // }), - // 甯傜骇骞冲彴锛堥珮寰凤級 - axios.get(common.poiserve, { - params: { - request: "GdPoi", - keywords: this.poi_text, - output: "json", - coord: "cgcs2000", - offset: 20, - page: 1, - }, - }), - ]) - .then( - (data) => { - // this.total = data.data.pois.length; - // this.poiList = - // data.data && data.data.pois; - //115鎺ュ彛 - if (data[0].status == 200) { - data[0].data.data.res && - data[0].data.data.res - .filter((item) => { - return item.name.includes(this.poi_text); - }) - .forEach((val) => { - Allresults.push(val); - }); - } - // 甯傜骇骞冲彴 - // // 鐧惧害 - // if (data[1].data.status == 0) { - // data[1].data.results.forEach((val) => { - // let obj = { - // address: val.address, - // adname: val.area, - // cityname: val.city, - // id: val.uid, - // lat: val.location.lat, - // lng: val.location.lng, - // name: val.name, - // pname: val.province, - // }; - // Allresults.push(obj); - // }); - // } - // 楂樺痉 - if (data[1].data.status == 1) { - data[1].data.pois && - data[1].data.pois - .filter((item) => { - return ( - item.pname.includes("鍖椾含") && - item.name.includes(this.poi_text) - ); - }) - .forEach((val) => { - let poiarr = val.location.split(","); - let poi = { - lon: parseFloat(poiarr[0]), - lat: parseFloat(poiarr[1]), - }; - let obj = { - adcode: val.adcode, - address: val.address, - adname: val.area, - citycode: val.citycode, - cityname: val.cityname, - id: val.uid, - lat: poi.lat, - lng: poi.lon, - name: val.name, - pcode: val.pcode, - pname: val.province, - type: val.type, - typecode: val.typecode, - }; - Allresults.push(obj); - }); - } - this.total = Allresults.length; - this.poiList = Allresults; - this.showList = true; - console.log(Allresults); - }, - (response) => { - console.log("error"); - } - ); + this.getPoi(); + this.getData(); + // axios + // .all([ + // // 115鎺ュ彛锛堝彲鏌ュ湴鍧楀悕锛� + // axios.post(common.poiserve2, { + // adcode: "110115", + // address: { + // name: "", + // type: "", + // }, + // adname: "澶у叴鍖�", + // cityname: "鍖椾含甯�", + // name: { + // name: this.poi_text, + // type: "", + // }, + // page: 1, + // perPageCount: 20, + // pcode: "110000", + // pname: "", + // resType: "", + // }), + // // // 甯傜骇骞冲彴锛堢櫨搴︼細浼氭煡鍒板鍦帮級 + // // axios.get(common.poiserve, { + // // params: { + // // request: "bdPoi", + // // query: this.poi_text, + // // output: "json", + // // coord: "cgcs2000", + // // page_num: 0, + // // page_size: 20, + // // }, + // // }), + // // 甯傜骇骞冲彴锛堥珮寰凤級 + // axios.get(common.poiserve, { + // params: { + // request: "GdPoi", + // keywords: this.poi_text, + // output: "json", + // coord: "cgcs2000", + // offset: 20, + // page: 1, + // }, + // }), + // ]) + // .then( + // (data) => { + // // this.total = data.data.pois.length; + // // this.poiList = + // // data.data && data.data.pois; + // //115鎺ュ彛 + // if (data[0].status == 200) { + // data[0].data.data.res && + // data[0].data.data.res + // .filter((item) => { + // return item.name.includes(this.poi_text); + // }) + // .forEach((val) => { + // Allresults.push(val); + // }); + // } + // // 甯傜骇骞冲彴 + // // // 鐧惧害 + // // if (data[1].data.status == 0) { + // // data[1].data.results.forEach((val) => { + // // let obj = { + // // address: val.address, + // // adname: val.area, + // // cityname: val.city, + // // id: val.uid, + // // lat: val.location.lat, + // // lng: val.location.lng, + // // name: val.name, + // // pname: val.province, + // // }; + // // Allresults.push(obj); + // // }); + // // } + // // 楂樺痉 + + // console.log(data, "鏁版嵁"); + // if (data[0].data.status == 1) { + // data[0].data.pois && + // data[0].data.pois + // .filter((item) => { + // return ( + // item.pname.includes("鍖椾含") && + // item.name.includes(this.poi_text) + // ); + // }) + // .forEach((val) => { + // let poiarr = val.location.split(","); + // let poi = { + // lon: parseFloat(poiarr[0]), + // lat: parseFloat(poiarr[1]), + // }; + // let obj = { + // adcode: val.adcode, + // address: val.address, + // adname: val.area, + // citycode: val.citycode, + // cityname: val.cityname, + // id: val.uid, + // lat: poi.lat, + // lng: poi.lon, + // name: val.name, + // pcode: val.pcode, + // pname: val.province, + // type: val.type, + // typecode: val.typecode, + // }; + // Allresults.push(obj); + // }); + // } + // this.total = Allresults.length; + // this.poiList = Allresults; + // this.showList = true; + // console.log(Allresults); + // }, + // (response) => { + // console.log("error"); + // } + // ); break; case "POI": - axios - .get(common.poiserve, { - params: { - request: "GdPoi", - keywords: this.poi_text, - output: "json", - coord: "cgcs2000", - offset: 20, - page: 1, - }, - }) - .then((res) => { - // 楂樺痉 - if (res.data.status == 1) { - res.data.pois && - res.data.pois - .filter((item) => { - var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g"); - return ( - item.pname.includes("鍖椾含") && - item.name.includes(this.poi_text) && - !reg.test(item.typecode) - ); - }) - .forEach((val) => { - let poiarr = val.location.split(","); - let poi = { - lon: parseFloat(poiarr[0]), - lat: parseFloat(poiarr[1]), - }; - let obj = { - adcode: val.adcode, - address: val.address, - adname: val.area, - citycode: val.citycode, - cityname: val.cityname, - id: val.uid, - lat: poi.lat, - lng: poi.lon, - name: val.name, - pcode: val.pcode, - pname: val.province, - type: val.type, - typecode: val.typecode, - }; - Allresults.push(obj); - }); - } - this.total = Allresults.length; - this.poiList = Allresults; - this.showList = true; - }); + this.getPoi(); break; case "鍦板潡": - axios - .post(common.poiserve2, { - adcode: "110115", - address: { - name: "", - type: "", - }, - adname: "澶у叴鍖�", - cityname: "鍖椾含甯�", - name: { - name: this.poi_text, - type: "", - }, - page: 1, - perPageCount: 20, - pcode: "110000", - pname: "", - resType: "", - }) - .then((res) => { - if (res.status == 200) { - res.data.data.res && - res.data.data.res - .filter((item) => { - // 鍒ゆ柇鍦板潡鏄惁鏈夋眽瀛� - var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g"); - return ( - item.name.includes(this.poi_text) && - reg.test(item.typecode) - ); - }) - .forEach((val) => { - Allresults.push(val); - }); - } - this.total = Allresults.length; - this.poiList = Allresults; - this.showList = true; - }); + this.getData(); break; } } diff --git a/src/components/sideMenu/layerMenu/layerPanel.vue b/src/components/sideMenu/layerMenu/layerPanel.vue index c256bc8..10bb101 100644 --- a/src/components/sideMenu/layerMenu/layerPanel.vue +++ b/src/components/sideMenu/layerMenu/layerPanel.vue @@ -128,7 +128,6 @@ loadLayer, clearLayerByTypeId, clearLayerByTypeIdArr, - loadAreaLayer } from "@/utils/map.js"; import _GLOBAL from "@/assets/GLOBAL"; import store from "@/utils/store.js"; @@ -306,7 +305,7 @@ // 浜岀淮搴曞浘閫夋嫨 handleEMapClick(result, index) { let p = sgworld.Navigate.getCameraInfo(); - let pitch ; + let pitch; if (pitch !== -90) { pitch = -90; sgworld.Navigate.flyToPointsInterest({ @@ -325,10 +324,10 @@ // 璁剧疆鐩告満 if (result.name == "浜岀淮鍦板浘") { - window.Viewer.scene.globe.maximumScreenSpaceError = 4/3; + window.Viewer.scene.globe.maximumScreenSpaceError = 4 / 3; this.changeLayerView(25000, false); } else if (result.name == "褰卞儚鍦板浘") { - window.Viewer.scene.globe.maximumScreenSpaceError = 4/3; + window.Viewer.scene.globe.maximumScreenSpaceError = 4 / 3; this.changeLayerView(50000, false); } // 鍒囨崲鍥惧眰 @@ -524,30 +523,28 @@ switch (index) { case 0: store.setSliderShow(true); - loadAreaLayer() - // window. = sgworld.Creator.createImageryProvider( - // layers[8].name, - // "tms", - // { - // id: layers[8].children[0].id, - // url: layers[8].children[0].urls, - // fileExtension: layers[8].children[0].img || "png", - // enablePickFeatures: false, - // level: layers[8].children[0].Level, - // minimumLevel: layers[8].children[0].minimumLevel, - // maximumLevel: layers[8].children[0].maximumLevel, - // tilingScheme: - // layers[8].children[0].tileType === "Geo" - // ? new Cesium.GeographicTilingScheme() - // : new Cesium.WebMercatorTilingScheme(), - // // alpha: layers[8].children[0].alpha, - // alpha: 1, - // }, - // "0", - // layers[8].children[0].zIndex, - // true, - // "" - // ); + window.tdglLayer = sgworld.Creator.createImageryProvider( + layers[8].name, + "tms", + { + id: layers[8].children[0].id, + url: layers[8].children[0].urls, + fileExtension: layers[8].children[0].img || "png", + enablePickFeatures: false, + level: layers[8].children[0].Level, + minimumLevel: layers[8].children[0].minimumLevel, + maximumLevel: layers[8].children[0].maximumLevel, + tilingScheme: + layers[8].children[0].tileType === "Geo" + ? new Cesium.GeographicTilingScheme() + : new Cesium.WebMercatorTilingScheme(), + alpha: layers[8].children[0].alpha, + }, + "0", + layers[8].children[0].zIndex, + true, + "" + ); store.setTdglFlag(true); break; case 1: diff --git a/src/components/sideMenu/sliderAlpha/alpha.vue b/src/components/sideMenu/sliderAlpha/alpha.vue index 35ce1e1..8b0f012 100644 --- a/src/components/sideMenu/sliderAlpha/alpha.vue +++ b/src/components/sideMenu/sliderAlpha/alpha.vue @@ -13,9 +13,6 @@ </template> <script> -import store from "@/utils/store.js"; -import _GLOBAL from "@/assets/GLOBAL"; -import { loadAreaLayer } from "../../../utils/map.js"; export default { data() { return { @@ -24,8 +21,7 @@ }, methods: { changeSlider(val) { - _GLOBAL.alpha = val / 100; - loadAreaLayer(); + window.tdglLayer.item.alpha = val / 100; }, }, }; diff --git a/src/utils/map.js b/src/utils/map.js index 96df340..fd9327b 100644 --- a/src/utils/map.js +++ b/src/utils/map.js @@ -4,7 +4,6 @@ import poiLayer from '@/components/poplayer/main'; import store from "@/utils/store"; import { Message } from 'element-ui'; -import { layers } from "../../static/json/layer.js"; let tdglLine, qiyexinxi, qysl, ydbm, ydlx, cyfx, crzt, ydmj, crnx, crnf, rjl, jzxg, jzmd; let objdata; @@ -2191,32 +2190,3 @@ }) } } - - -export function loadAreaLayer() { - if (window.tdglLayer) { - sgworld.Creator.DeleteObject(window.tdglLayer); - } - window.tdglLayer = sgworld.Creator.createImageryProvider( - layers[8].name, - "tms", - { - id: layers[8].children[0].id, - url: layers[8].children[0].urls, - fileExtension: layers[8].children[0].img || "png", - enablePickFeatures: false, - level: layers[8].children[0].Level, - minimumLevel: layers[8].children[0].minimumLevel, - maximumLevel: layers[8].children[0].maximumLevel, - tilingScheme: - layers[8].children[0].tileType === "Geo" - ? new Cesium.GeographicTilingScheme() - : new Cesium.WebMercatorTilingScheme(), - alpha: _GLOBAL.alpha, - }, - "0", - layers[8].children[0].zIndex, - true, - "" - ); -} \ No newline at end of file -- Gitblit v1.9.3