| | |
| | | navigationStartLngLat: "", //导航起点 |
| | | navigationEndLngLat: "", //导航终点 |
| | | drawALineLayer: null, //导航路径图层 |
| | | drawALineLayerIcon: null, //导航路径图层图标 |
| | | isOpenDrawALine: false, //是否开启路径 |
| | | endPosition: "", //传送终点经纬度-- |
| | | isendPosition: false, //传送终点经纬度--感应数据 |
| | |
| | | state.isOpenDrawALine = false; |
| | | } |
| | | }, |
| | | removerPolyLineIcon(state) { |
| | | if (state.drawALineLayerIcon) { |
| | | state.drawALineLayerIcon.remove(); |
| | | state.drawALineLayerIcon = null; |
| | | } |
| | | }, |
| | | removePolylineMany(state) { |
| | | if (state.drawALineLayerMany) { |
| | | state.drawALineLayerMany.remove(); |
| | |
| | | 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, |
| | |
| | | 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 }, //偏移像素 |
| | |
| | | }; |
| | | 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); //移动 |
| | | }, |
| | |
| | | color: red, |
| | | speed: 10, |
| | | }); |
| | | let drawALineLayerMany = new global.DC.VectorLayer("layer"); |
| | | let material1 = new global.DC.PolylineImageTrailMaterialProperty({ |
| | | color: global.DC.Color(255, 0, 0), |
| | | speed: 60, |
| | | image: "img/icon/right.png", |
| | | repeat: { x: 320, y: 1 }, |
| | | }); |
| | | let drawALineLayerMany = new global.DC.VectorLayer("manyLinePointLayer"); |
| | | state.mviewer.addLayer(drawALineLayerMany); |
| | | //多条线 |
| | | for (let k in Strs) { |
| | | let polyline = new global.DC.Polyline(Strs[k].value); //加入绘画点 |
| | | polyline.setStyle({ |
| | | width: 3, |
| | | material: material, |
| | | material: material1, |
| | | clampToGround: true, |
| | | }); |
| | | drawALineLayerMany.addOverlay(polyline); |
| | | let post = Strs[k].value.split(";")[0].split(","); |
| | | let position = new global.DC.Position(post[0], post[1]); |
| | | let Label = new global.DC.Label(position, Strs[k].name); |
| | | Label.setStyle({ |
| | | font: "16px sans-serif", // CSS 字体设置 |
| | | scale: 1, //比例 |
| | | fillColor: white, //文字颜色 |
| | | showBackground: true, //是否显示背景 |
| | | backgroundColor: blue, //背景颜色 |
| | | // outlineColor: white, //边框颜色 |
| | | // outlineWidth: 10, //边框大小, |
| | | }); |
| | | drawALineLayerMany.addOverlay(Label); |
| | | // let post = Strs[k].value.split(";")[0].split(","); |
| | | // let position = new global.DC.Position(post[0], post[1]); |
| | | // let Label = new global.DC.Label(position, Strs[k].name); |
| | | // Label.setStyle({ |
| | | // font: "16px sans-serif", // CSS 字体设置 |
| | | // scale: 1, //比例 |
| | | // fillColor: white, //文字颜色 |
| | | // showBackground: true, //是否显示背景 |
| | | // backgroundColor: blue, //背景颜色 |
| | | // // outlineColor: white, //边框颜色 |
| | | // // outlineWidth: 10, //边框大小, |
| | | // }); |
| | | // drawALineLayerMany.addOverlay(Label); |
| | | } |
| | | //多个点 |
| | | let point = value[1]; |
| | |
| | | |
| | | let billboard = new global.DC.Billboard( |
| | | position, |
| | | "img/dingwei/dingwei4.png" |
| | | "img/dingwei/dingwei1.png" |
| | | ); //加入绘画点 |
| | | billboard.setStyle({ |
| | | pixelOffset: { x: 0, y: -17 }, //偏移像素 |
| | |
| | | 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); //移动 |
| | | }, |
| | | }, |