From bf58722dfd03ea1513f3acc7331d4d4403fca76e Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 18 Mar 2022 11:48:37 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/school-web
---
src/store/modules/popupParams.js | 227 ++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 161 insertions(+), 66 deletions(-)
diff --git a/src/store/modules/popupParams.js b/src/store/modules/popupParams.js
index 218580c..c01f5ec 100644
--- a/src/store/modules/popupParams.js
+++ b/src/store/modules/popupParams.js
@@ -1,5 +1,11 @@
+import leftNavsData from './pc/leftNavsData'
+window.labelLayer = null;
+window.divIcon = null;
+
+
const popupParams = {
state: {
+ ...leftNavsData.state,
popupBgUrl: null,
pupupQRUrl: null,
terminus: null,
@@ -21,16 +27,21 @@
addTagPopup: false,
addTagPosition: null,
- labelLayer: null, //自定义标签图层
+ // labelLayer: null, // 自定义标签图层
addSignList: true,
myviewer: null,
nowlabelLayerData: {},
labelLayerDataShow: false,
- closeMapClick: false, //关闭地图点击,防止新增标签误触
+ closeMapClick: false // 关闭地图点击,防止新增标签误触
},
mutations: {
+ ...leftNavsData.mutations,
SET_POPUPBGURL(state, popupBgUrl) {
+ // console.log(popupBgUrl, "see33333")
+ if (!popupBgUrl) {
+ return
+ }
state.popupBgUrl = popupBgUrl
},
SET_POPUPQRURL(state, pupupQRUrl) {
@@ -90,26 +101,26 @@
state.addTagPosition = addTagPosition
},
initLabelLayer(state, val) {
- if (!state.labelLayer) {
- state.labelLayer = new global.DC.HtmlLayer("labelLayer");
- val.addLayer(state.labelLayer);
+ if (!window.labelLayer) {
+ window.labelLayer = new global.DC.HtmlLayer('labelLayer')
+ val.addLayer(window.labelLayer)
}
- state.myviewer = val;
+ state.myviewer = val
},
clearLabelLayerIcon(state, val) {
- if (state.labelLayer) {
- state.labelLayer.clear();
+ if (window.labelLayer) {
+ window.labelLayer.clear()
}
},
openLabelLayer(state, val) {
// console.log(val, "see")
if (val.show) {
- state.nowlabelLayerData = val.data;
- state.labelLayerDataShow = true;
+ state.nowlabelLayerData = val.data
+ state.labelLayerDataShow = true
} else {
- state.nowlabelLayerData = {};
- state.labelLayerDataShow = false;
+ state.nowlabelLayerData = {}
+ state.labelLayerDataShow = false
}
},
CLEAR_ALL(state, param) {
@@ -123,10 +134,11 @@
state.liveList = []
},
set_closeMapClick(state, val) {
- state.closeMapClick = val;
+ state.closeMapClick = val
}
},
actions: {
+ ...leftNavsData.actions,
openPopups({
state,
commit,
@@ -141,8 +153,8 @@
// item: item,
// });
// });
- var popup = new global.DC.DivForms(state.viewer, {
- domId: "divFormsDomBox",
+ new global.DC.DivForms(state.viewer, {
+ domId: 'divFormsDomBox',
position: [
global.DC.Transform.transformWGS84ToCartesian(
new global.DC.Position(
@@ -150,50 +162,52 @@
Number(value.lat),
Number(value.alt || 0)
)
- ),
- ],
- });
- dispatch("setOurDataInPoput", value);
- dispatch("pcFlyView", {
+ )
+ ]
+ })
+ dispatch('setOurDataInPoput', value)
+ dispatch('pcFlyView', {
jd: value.lng,
wd: value.lat,
- viewer: this.viewer,
- });
+ viewer: this.viewer
+ })
},
setOurDataInPoput({
state,
commit,
dispatch
}, value) {
- //弹窗使用方法
+ // 弹窗使用方法
- commit("CLEAR_ALL", null);
-
-
- commit("SET_STATENAME", value.item.mechanismname);
- commit("SET_PANORAMAURL", value.item.panoramaurl);
- commit("SET_INTRODUCETEXT", value.item.introduce);
- var imgArr = value.item.tpurl.split(",");
- commit("SET_POPUPBGURL", imgArr[0]);
- commit("SET_POPUPQRURL", value.item.codeurl);
- commit("SET_POINTPOSITION", [
+ commit('CLEAR_ALL', null)
+ commit('SET_MONITORPOPUP', false)
+ commit('SET_PANORAMAPOPUP', false)
+ commit('SET_STATENAME', value.item.mechanismname)
+ commit('SET_PANORAMAURL', value.item.panoramaurl)
+ commit('SET_INTRODUCETEXT', value.item.introduce)
+ var imgArr = []
+ if (value.item.tpurl) {
+ imgArr = value.item.tpurl.split(',')
+ }
+ commit('SET_POPUPBGURL', imgArr[0])
+ commit('SET_POPUPIMGATLAS', imgArr)
+ commit('SET_POPUPQRURL', value.item.codeurl)
+ commit('SET_POINTPOSITION', [
Number(value.lng),
Number(value.lat),
Number(0),
Number(0),
Number(-90),
- Number(0),
- ]);
- commit('SET_POPUPIMGATLAS', imgArr)
- commit("SET_DETAILSPOPUP", true);
+ Number(0)
+ ])
+ commit('SET_DETAILSPOPUP', true)
},
pcMoveView({
state,
commit,
dispatch
}, val) {
- console.log(val, "see1")
- val.viewer.camera.setView({
+ global.viewer.camera.setView({
// Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
// fromDegrees()方法,将经纬度和高程转换为世界坐标
destination: global.DC.Namespace.Cesium.Cartesian3.fromDegrees(
@@ -206,9 +220,9 @@
heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
// 视角
pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
- roll: 0.0,
- },
- });
+ roll: 0.0
+ }
+ })
},
pcFlyView({
state,
@@ -226,16 +240,16 @@
commit,
dispatch
}, val) {
- let list = val.list;
+ const list = val.list
if (val.clear) {
- // state.labelLayer.remove();
- state.labelLayer.clear();
+ // window.labelLayer.remove();
+ window.labelLayer.clear()
}
- if (val.add) { //刷新列表
- state.addSignList = !state.addSignList;
- return;
+ if (val.add) { // 刷新列表
+ state.addSignList = !state.addSignList
+ return
}
- for (let i in list) {
+ for (const i in list) {
const divIcon = new global.DC.DivIcon(
new global.DC.Position(
Number(list[i].jd),
@@ -252,17 +266,17 @@
</div>
</div>
`
- );
- //订阅事件
- divIcon.on(global.DC.MouseEventType.CLICK, (e) => {
+ )
+ // 订阅事件
+ window.divIcon.on(global.DC.MouseEventType.CLICK, (e) => {
// console.log(e);
// return;
// 定制化窗体
- let position = e.position,
- lntLat = [e.overlay._position._lng, e.overlay._position._lat];
+ // const position = e.position
+ const lntLat = [e.overlay._position._lng, e.overlay._position._lat]
// console.log(position, lntLat, list[i], state.myviewer, "see")
- new global.DC.DivForms(state.myviewer, {
- domId: "labelLayerid",
+ new global.DC.DivForms(global.viewer, {
+ domId: 'labelLayerid',
position: [
global.DC.Transform.transformWGS84ToCartesian(
new global.DC.Position(
@@ -270,10 +284,10 @@
Number(lntLat[1]),
Number(0)
)
- ),
- ],
- });
- state.myviewer.camera.setView({
+ )
+ ]
+ })
+ global.viewer.camera.setView({
// Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
// fromDegrees()方法,将经纬度和高程转换为世界坐标
destination: global.DC.Namespace.Cesium.Cartesian3.fromDegrees(
@@ -286,17 +300,98 @@
heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
// 视角
pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
- roll: 0.0,
- },
- });
- commit("openLabelLayer", {
+ roll: 0.0
+ }
+ })
+ commit('openLabelLayer', {
show: true,
data: list[i]
})
- });
- state.labelLayer.addOverlay(divIcon);
+ })
+ window.labelLayer.addOverlay(window.divIcon)
}
},
+ addLabelLayerIconMobelUse({
+ state,
+ commit,
+ dispatch
+ }, val) {
+ const list = val.list
+ if (!window.labelLayer) {
+ window.labelLayer = new global.DC.HtmlLayer('labelLayer')
+ global.viewer.addLayer(window.labelLayer)
+ // state.myviewer = val.mviewer
+ }
+ if (val.clear) {
+ // window.labelLayer.remove();
+ window.labelLayer.clear()
+ }
+ if (val.add) { // 刷新列表
+ state.addSignList = !state.addSignList
+ return
+ }
+ for (let i in list) {
+ window.divIcon = new global.DC.DivIcon(
+ new global.DC.Position(
+ Number(list[i].jd),
+ Number(list[i].wd),
+ 0
+ ),
+ `
+ <div class="tag-entitys-box">
+ <div class="tag-content">
+ ${list[i].name}
+ </div>
+ <div class="tag-angle-content">
+ <img src="https://map.hit.edu.cn/images/tarrow_xq.png">
+ </div>
+ </div>
+ `
+ )
+ // 订阅事件
+ window.divIcon.on(global.DC.MouseEventType.CLICK, (e) => {
+ // console.log(e);
+ // return;
+ // 定制化窗体
+ // const position = e.position
+ const lntLat = [e.overlay._position._lng, e.overlay._position._lat]
+ // console.log(position, lntLat, list[i], state.myviewer, "see")
+ new global.DC.DivForms(global.viewer, {
+ domId: 'labelLayerid',
+ position: [
+ global.DC.Transform.transformWGS84ToCartesian(
+ new global.DC.Position(
+ Number(lntLat[0]),
+ Number(lntLat[1]),
+ Number(0)
+ )
+ )
+ ]
+ })
+ global.viewer.camera.setView({
+ // Cesium的坐标是以地心为原点,一向指向南美洲,一向指向亚洲,一向指向北极州
+ // fromDegrees()方法,将经纬度和高程转换为世界坐标
+ destination: global.DC.Namespace.Cesium.Cartesian3.fromDegrees(
+ lntLat[0],
+ lntLat[1],
+ 400.0
+ ),
+ orientation: {
+ // 指向
+ heading: global.DC.Namespace.Cesium.Math.toRadians(0, 0),
+ // 视角
+ pitch: global.DC.Namespace.Cesium.Math.toRadians(-90),
+ roll: 0.0
+ }
+ })
+ commit('openLabelLayer', {
+ show: true,
+ data: list[i]
+ })
+ })
+ window.labelLayer.addOverlay(window.divIcon)
+ }
+ }
}
}
--
Gitblit v1.9.3