diff --git a/src/assets/cesiumMap/legendIcon/topography.png b/src/assets/cesiumMap/legendIcon/topography.png new file mode 100644 index 0000000..0b25ade --- /dev/null +++ b/src/assets/cesiumMap/legendIcon/topography.png Binary files differ diff --git a/src/assets/cesiumMap/legendIcon/topography.png b/src/assets/cesiumMap/legendIcon/topography.png new file mode 100644 index 0000000..0b25ade --- /dev/null +++ b/src/assets/cesiumMap/legendIcon/topography.png Binary files differ diff --git a/src/assets/newImgs/topography.png b/src/assets/newImgs/topography.png index 0b25ade..e3b4498 100644 --- a/src/assets/newImgs/topography.png +++ b/src/assets/newImgs/topography.png Binary files differ diff --git a/src/assets/cesiumMap/legendIcon/topography.png b/src/assets/cesiumMap/legendIcon/topography.png new file mode 100644 index 0000000..0b25ade --- /dev/null +++ b/src/assets/cesiumMap/legendIcon/topography.png Binary files differ diff --git a/src/assets/newImgs/topography.png b/src/assets/newImgs/topography.png index 0b25ade..e3b4498 100644 --- a/src/assets/newImgs/topography.png +++ b/src/assets/newImgs/topography.png Binary files differ diff --git a/src/views/sponeScreen/gisMF/legendKF.vue b/src/views/sponeScreen/gisMF/legendKF.vue index 81c401b..a794e31 100644 --- a/src/views/sponeScreen/gisMF/legendKF.vue +++ b/src/views/sponeScreen/gisMF/legendKF.vue @@ -76,6 +76,43 @@ const changeLegend = item => { item.isCheck = !item.isCheck; console.log('item--', item); + // if (item.layername == 'weather_cloud') { + // return newfiberMap.setLayersVisible([item.layername], item.isCheck); + // } + if (item.layername == 'whiteMap') { + legendList.value[0]['children'][0][1].isCheck = false; + legendList.value[0]['children'][1][0].isCheck = false; + changeMapStyle.mapSetWhiteStyle(newfiberMap); + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'none'); + } + if (item.layername == 'blackMap') { + legendList.value[0]['children'][0][0].isCheck = false; + legendList.value[0]['children'][1][0].isCheck = false; + changeMapStyle.mapSetBlueStyle(newfiberMap); + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'none'); + } + if (item.layername == 'imageMap') { + legendList.value[0]['children'][0][0].isCheck = false; + legendList.value[0]['children'][0][1].isCheck = false; + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'visible'); + } + 114.110631109158, 34.6762585421128, 114.550431262765, 34.9438974105791; + if (item.layername == 'topography') { + if (item.isCheck) { + newfiberMapBoxVectorLayer.addImageToMap( + item.layername, + [ + [114.110631109158, 34.9438974105791], + [114.550431262765, 34.9438974105791], + [114.550431262765, 34.6762585421128], + [114.110631109158, 34.6762585421128], + ], + topography + ); + } else { + newfiberMapBoxVectorLayer.removeByIds([item.layername]); + } + } if (item.layername == 'builtCity') { if (item.isCheck) { newfiberMapBoxVectorLayer.addGeojsonLine(item.layername, item.data, 10, 0.4, 0.6); diff --git a/src/assets/cesiumMap/legendIcon/topography.png b/src/assets/cesiumMap/legendIcon/topography.png new file mode 100644 index 0000000..0b25ade --- /dev/null +++ b/src/assets/cesiumMap/legendIcon/topography.png Binary files differ diff --git a/src/assets/newImgs/topography.png b/src/assets/newImgs/topography.png index 0b25ade..e3b4498 100644 --- a/src/assets/newImgs/topography.png +++ b/src/assets/newImgs/topography.png Binary files differ diff --git a/src/views/sponeScreen/gisMF/legendKF.vue b/src/views/sponeScreen/gisMF/legendKF.vue index 81c401b..a794e31 100644 --- a/src/views/sponeScreen/gisMF/legendKF.vue +++ b/src/views/sponeScreen/gisMF/legendKF.vue @@ -76,6 +76,43 @@ const changeLegend = item => { item.isCheck = !item.isCheck; console.log('item--', item); + // if (item.layername == 'weather_cloud') { + // return newfiberMap.setLayersVisible([item.layername], item.isCheck); + // } + if (item.layername == 'whiteMap') { + legendList.value[0]['children'][0][1].isCheck = false; + legendList.value[0]['children'][1][0].isCheck = false; + changeMapStyle.mapSetWhiteStyle(newfiberMap); + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'none'); + } + if (item.layername == 'blackMap') { + legendList.value[0]['children'][0][0].isCheck = false; + legendList.value[0]['children'][1][0].isCheck = false; + changeMapStyle.mapSetBlueStyle(newfiberMap); + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'none'); + } + if (item.layername == 'imageMap') { + legendList.value[0]['children'][0][0].isCheck = false; + legendList.value[0]['children'][0][1].isCheck = false; + newfiberMapbox.map.setLayoutProperty('newfiber-XYZLayer', 'visibility', 'visible'); + } + 114.110631109158, 34.6762585421128, 114.550431262765, 34.9438974105791; + if (item.layername == 'topography') { + if (item.isCheck) { + newfiberMapBoxVectorLayer.addImageToMap( + item.layername, + [ + [114.110631109158, 34.9438974105791], + [114.550431262765, 34.9438974105791], + [114.550431262765, 34.6762585421128], + [114.110631109158, 34.6762585421128], + ], + topography + ); + } else { + newfiberMapBoxVectorLayer.removeByIds([item.layername]); + } + } if (item.layername == 'builtCity') { if (item.isCheck) { newfiberMapBoxVectorLayer.addGeojsonLine(item.layername, item.data, 10, 0.4, 0.6); diff --git a/src/views/sponeScreen/gisMF/mapboxVectorLayer.js b/src/views/sponeScreen/gisMF/mapboxVectorLayer.js index 60205b9..691d1e3 100644 --- a/src/views/sponeScreen/gisMF/mapboxVectorLayer.js +++ b/src/views/sponeScreen/gisMF/mapboxVectorLayer.js @@ -71,6 +71,22 @@ features: features, }; } + //添加image图层 + static addImageToMap(layerId, coordinates, imageUrl) { + if (!newfiberMapbox.map.getLayer(layerId)) { + newfiberMapbox.map.addSource(layerId, { + type: 'image', + url: imageUrl, + coordinates: coordinates, + }); + newfiberMapbox.map.addLayer({ + id: layerId, + type: 'raster', + source: layerId, + paint: {}, + }); + } + } //移除图层 static removeByIds(layernameList) { layernameList.forEach(layerName => {