import store from "@/store";
import configTool from "@/assets/js/tool/configTool";
const rightManager = {
effect: null,
content: null,
titleName: null,
addEvent() {
document
.getElementById("generate-sql")
.addEventListener("mouseover", (e) => {
document.getElementById("right-menu2").style.display = "block";
});
document
.getElementById("generate-sql")
.addEventListener("mouseout", (e) => {
document.getElementById("right-menu2").style.display = "none";
});
document.getElementById("copy").addEventListener("mouseover", (e) => {
document.getElementById("right-menu3").style.display = "block";
});
document.getElementById("copy").addEventListener("mouseout", (e) => {
document.getElementById("right-menu3").style.display = "none";
});
},
setLayerOpen() {
layer.open({
type: 1,
title: this.title,
content: this.content,
// 宽高:如果是100%就是满屏
// 坐标:auto(默认坐标,即垂直水平居中),具体当文档:https://www.layui.com/doc/modules/layer.html#offset
offset: "auto",
closeBtn: 1,
// 遮罩:默认:0.3透明度的黑色背景('#000')
shade: 0.3,
// 是否点击遮罩关闭:默认:false
shadeClose: false,
// 自动关闭所需毫秒:默认:0不会自动关闭
time: 0,
// 最大最小化:默认:false
maxmin: false,
// 固定:默认:true
fixed: true,
// 是否允许拉伸:默认:true
resize: false,
// 层叠顺序:默认:19891014,一般用于解决和其它组件的层叠冲突
btn: ["确认"],
btn1: function (index, layero) {
layer.close(index);
},
zIndex: 19891014,
});
},
setContent(res) {
this.content =
"
坐标系 | 经度 | 纬度 |
---|
十进制 | " +
res.lon +
" | " +
res.lat +
" |
---|
";
this.setLayerOpen();
},
setMenuClick(res) {
switch (res) {
case "显示此处经纬度":
this.title = "位置信息";
this.setContent(store.state.rightCoodinate);
break;
case "显示当前视角":
this.title = "视角信息";
this.setContent(configTool.getViewerCamera());
break;
case "开启深度检测":
Viewer.scene.globe.depthTestAgainstTerrain = true;
break;
case "关闭深度检测":
Viewer.scene.globe.depthTestAgainstTerrain = false;
break;
case "开启雨天":
if (this.effect) {
earthCtrl.environment.disableEffect(this.effect);
this.effect = null;
}
this.effect = "rain";
let rainValue = {
test1: 2,
test2: 0.3,
test3: -0.4,
test4: 1.0,
};
earthCtrl.environment.showEffect("rain");
break;
case "开启雾天":
if (this.effect) {
earthCtrl.environment.disableEffect(this.effect);
this.effect = null;
}
this.effect = "fog";
earthCtrl.environment.showEffect("fog");
break;
case "开启雪天":
this.effect = "snow";
let snowValue = {
test1: 2,
test2: 1.0,
test3: 0.5,
test4: 0.5,
};
earthCtrl.environment.showEffect("snow");
break;
case "关闭天气":
if (this.effect) {
earthCtrl.environment.disableEffect(this.effect);
this.effect = null;
}
break;
case "绕此处环绕":
var obj = store.state.rightCoodinate;
this.pointFly = earthCtrl.camera.rotateCamera({
lon: obj.lon,
lat: obj.lat,
distance: 1000,
pitch: -30,
});
break;
case "关闭绕此处环绕":
break;
case "定位到此处":
var obj = store.state.rightCoodinate;
configTool.setMapFly(obj);
break;
}
},
};
export default rightManager;