From 1b65bf157e9d1852bf819bcebcdbf596b77ae6b9 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Tue, 18 Jan 2022 14:11:36 +0800
Subject: [PATCH] +点击建筑弹窗加绿布
---
src/store/modules/mobile.js | 64 ++++++++++++++++++++++---------
1 files changed, 45 insertions(+), 19 deletions(-)
diff --git a/src/store/modules/mobile.js b/src/store/modules/mobile.js
index 979e095..88bf5b0 100644
--- a/src/store/modules/mobile.js
+++ b/src/store/modules/mobile.js
@@ -46,6 +46,7 @@
tilesetLayer: null, //2.5d模型
usetowpointfive: null,
tilesetLayer: null, //瀑布流
+ areaLayer: null, //2.5d事件--绿色图层
vecLayer: null, //3D底图
cvaLayer: null, //3D底图
@@ -56,6 +57,7 @@
navigationStartLngLat: "", //导航起点
navigationEndLngLat: "", //导航终点
drawALineLayer: null, //导航路径图层
+ drawALineLayerIcon: null, //导航路径图层图标
isOpenDrawALine: false, //是否开启路径
endPosition: "", //传送终点经纬度--
isendPosition: false, //传送终点经纬度--感应数据
@@ -176,6 +178,7 @@
state.tilesetLayer.show = true; //显示3d图形
state.startPointFn(); //移动默认视角
// state.mviewer.flyTo(state.tileset);
+ state.areaLayer.show = false; //绿布
//3D视角不限制
state.mviewer.scene.screenSpaceCameraController.minimumZoomDistance = 80;
@@ -207,7 +210,7 @@
state.newLayer = state.usetowpointfive(); //添加2.5d图形贴片
state.wallLayer.show = false; //打开瀑布
state.startPointFn(); //移动默认视角
-
+ state.areaLayer.show = true; //绿布
//2.5D视角限制
state.mviewer.scene.screenSpaceCameraController.minimumZoomDistance = 0;
// 最大
@@ -223,6 +226,10 @@
// 视角旋转
state.mviewer.scene.screenSpaceCameraController.enableTilt = false;
}
+ },
+ //绿布
+ MSET_areaLayer(state, data) {
+ state.areaLayer = data;
},
//切换控制
MSET_PERSPECTIVECONTROL(state, data) {
@@ -270,6 +277,12 @@
state.isOpenDrawALine = false;
}
},
+ removerPolyLineIcon(state) {
+ if (state.drawALineLayerIcon) {
+ state.drawALineLayerIcon.remove();
+ state.drawALineLayerIcon = null;
+ }
+ },
removePolylineMany(state) {
if (state.drawALineLayerMany) {
state.drawALineLayerMany.remove();
@@ -302,7 +315,7 @@
const nowHeight = Math.ceil(
state.mviewer.camera.positionCartographic.height
);
- console.log(data);
+ // console.log(data);
if (state.dimension == "3D") {
Flys = [
+data.lntLat[0] + 0.01197,
@@ -744,22 +757,19 @@
color: color,
speed: 10,
});
- let drawALineLayer = new global.DC.VectorLayer("layer");
- state.mviewer.addLayer(drawALineLayer);
- let polyline = new global.DC.Polyline(Str); //加入绘画点
- polyline.setStyle({
- width: 3,
- material: material,
- clampToGround: true,
- });
- drawALineLayer.addOverlay(polyline);
+ state.drawALineLayer = new global.DC.VectorLayer("lineLayer");
+ state.mviewer.addLayer(state.drawALineLayer);
+
//如果是添加 给第一个点加入图标 和事件
if (value[1]) {
+ commit("removerPolyLineIcon");
+ state.drawALineLayerIcon = new global.DC.VectorLayer("pointLayer");
+ state.mviewer.addLayer(state.drawALineLayerIcon);
let post = Str.split(";")[0].split(",");
let position = new global.DC.Position(post[0], post[1]);
let billboard = new global.DC.Billboard(
position,
- "img/dingwei/dingwei4.png"
+ "img/dingwei/dingwei1.png"
); //加入绘画点
billboard.setStyle({
pixelOffset: { x: 0, y: -17 }, //偏移像素
@@ -774,15 +784,26 @@
let windowData = {
position,
lntLat,
- query: { ...(value[1] || {}), position, lntLat },
+ query: {
+ ...(value[1] || {}),
+ position,
+ lntLat,
+ notAddGoOn: "notAddGoOn",
+ },
useJWD: true, //仅使用经纬度
};
dispatch("setMobileWindows", windowData);
});
- drawALineLayer.addOverlay(billboard);
+ state.drawALineLayerIcon.addOverlay(billboard);
}
+ let polyline = new global.DC.Polyline(Str); //加入线
+ polyline.setStyle({
+ width: 3,
+ material: material,
+ clampToGround: true,
+ });
+ state.drawALineLayer.addOverlay(polyline);
- state.drawALineLayer = drawALineLayer;
state.isOpenDrawALine = true;
// commit("cameraSetView", state.navigationStartLngLat); //移动
},
@@ -791,6 +812,7 @@
//检查是否存在路线
commit("removePolylineMany");
commit("removePolyline");
+ commit("removerPolyLineIcon");
let Strs = value[0];
let red = global.DC.Namespace.Cesium.Color.fromCssColorString("#FF0000");
let white = global.DC.Namespace.Cesium.Color.fromCssColorString("#fff");
@@ -805,7 +827,7 @@
image: "img/icon/right.png",
repeat: { x: 320, y: 1 },
});
- let drawALineLayerMany = new global.DC.VectorLayer("layer");
+ let drawALineLayerMany = new global.DC.VectorLayer("manyLinePointLayer");
state.mviewer.addLayer(drawALineLayerMany);
//多条线
for (let k in Strs) {
@@ -853,7 +875,12 @@
let windowData = {
position,
lntLat,
- query: { ...(value[2] || {}), position, lntLat },
+ query: {
+ ...(value[2] || {}),
+ position,
+ lntLat,
+ notAddGoOn: "notAddGoOn",
+ },
useJWD: true, //仅使用经纬度
};
dispatch("setMobileWindows", windowData);
@@ -888,9 +915,8 @@
drawALineLayerMany.addOverlay(Labels);
// console.log(point[k]);
}
-
state.drawALineLayerMany = drawALineLayerMany;
- state.isOpenDrawALineMany = true;
+ state.isOpenDrawALineMany = value[2].name ? value[2].name : true;
// commit("cameraSetView", state.navigationStartLngLat); //移动
},
},
--
Gitblit v1.9.3