From 0cae92b7ed0a080f74df6a30c0d68d2d0b45ec70 Mon Sep 17 00:00:00 2001 From: 少年 <1392120328@qq.com> Date: 星期三, 13 三月 2024 11:32:49 +0800 Subject: [PATCH] Merge branch 'master' of http://103.135.160.14:9034/r/PM20221203225_MobileWeb --- src/assets/img/right/test01.png | 0 src/assets/img/right/test02.png | 0 src/assets/img/right/test04.png | 0 src/assets/img/right/test03.png | 0 src/utils/map2.js | 76 +++++++++++++++---------- src/components/sideMenu/layerTreePanel/layerTreePanel2.vue | 76 ++++++++++++++++++++++--- 6 files changed, 112 insertions(+), 40 deletions(-) diff --git a/src/assets/img/right/test01.png b/src/assets/img/right/test01.png index db8dd6a..e4ef078 100644 --- a/src/assets/img/right/test01.png +++ b/src/assets/img/right/test01.png Binary files differ diff --git a/src/assets/img/right/test02.png b/src/assets/img/right/test02.png index db8dd6a..e4ef078 100644 --- a/src/assets/img/right/test02.png +++ b/src/assets/img/right/test02.png Binary files differ diff --git a/src/assets/img/right/test03.png b/src/assets/img/right/test03.png index db8dd6a..e4ef078 100644 --- a/src/assets/img/right/test03.png +++ b/src/assets/img/right/test03.png Binary files differ diff --git a/src/assets/img/right/test04.png b/src/assets/img/right/test04.png index db8dd6a..e4ef078 100644 --- a/src/assets/img/right/test04.png +++ b/src/assets/img/right/test04.png Binary files differ diff --git a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue index 51426ba..3d49580 100644 --- a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue +++ b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue @@ -1855,6 +1855,7 @@ layer.item.baseLayer = true; } }, + // 甯傛斂鏉嗕綋鑱氬悎 initLdgCluster(treeNode) { if (treeNode.checked == false) { window.mapapi.removeLayer(window.ldgclusterLayer); @@ -1890,7 +1891,7 @@ source: clusterSource, style: function (feature) { var size = feature.get("features").length; - if (size <= 100) { + if (size == 1) { return new ol.style.Style({ image: new ol.style.Icon({ anchor: [0.5, 1], @@ -1940,11 +1941,11 @@ window.mapapi.addLayer(window.ldgclusterLayer); } else if (treeNode.name == "璺悕鐗屾潌 ") { - window.tldgclusterLayer = new ol.layer.Vector({ + window.tldgclusterLayer = new ol.layer.Vector({ source: clusterSource, style: function (feature) { var size = feature.get("features").length; - if (size <= 100) { + if (size == 1) { return new ol.style.Style({ image: new ol.style.Icon({ anchor: [0.5, 1], @@ -1999,7 +2000,20 @@ window.mapapi.removeLayer(window.jkspclusterLayer); window.mapapi.removeLayer(window.qiyeclusterLayer); loading.close(); + window.mapapi.getView().on("change:resolution", function (event) { + if ( + window.mapapi.getView().getZoom() == + window.mapapi.getView().getMaxZoom() + ) { + console.log("max"); + + clusterSource.setDistance(0); + } else { + clusterSource.setDistance(40); + } + }); }, + // 瑙嗛鐩戞帶鑱氬悎 initCluster(treeNode) { if (treeNode.checked == false) { window.mapapi.removeLayer(window.jkspclusterLayer); @@ -2028,11 +2042,11 @@ // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡 var styleCache = {}; - window.jkspclusterLayer = new ol.layer.Vector({ + window.jkspclusterLayer = new ol.layer.Vector({ source: clusterSource, style: function (feature) { var size = feature.get("features").length; - if (size <= 100) { + if (size == 1) { return new ol.style.Style({ image: new ol.style.Icon({ anchor: [0.5, 1], @@ -2087,6 +2101,18 @@ window.mapapi.removeLayer(window.qiyeclusterLayer); window.mapapi.addLayer(window.jkspclusterLayer); loading.close(); + window.mapapi.getView().on("change:resolution", function (event) { + if ( + window.mapapi.getView().getZoom() == + window.mapapi.getView().getMaxZoom() + ) { + console.log("max"); + + clusterSource.setDistance(0); + } else { + clusterSource.setDistance(40); + } + }); // new Cesium.GeoJsonDataSource.load( // treeNode.urls + // "?version=1.3.0&request=GetFeature&format=json&typename=" + @@ -2274,7 +2300,7 @@ // }); }); }, - //浼佷笟淇℃伅鍔犺浇 + //浼佷笟淇℃伅鑱氬悎 qiyeCluster(treeNode) { if (treeNode.checked == false) { window.mapapi.removeLayer(window.qiyeclusterLayer); @@ -2294,21 +2320,20 @@ "?version=1.3.0&request=GetFeature&format=json&typename=" + treeNode.layer, }); - // 鍒涘缓鑱氬悎灞� var clusterSource = new ol.source.Cluster({ - distance: 200, + distance: 40, source: vectorSource, }); // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡 var styleCache = {}; - window.qiyeclusterLayer = new ol.layer.Vector({ + window.qiyeclusterLayer = new ol.layer.Vector({ source: clusterSource, style: function (feature) { var size = feature.get("features").length; - if (size <= 1300) { + if (size == 1) { return new ol.style.Style({ image: new ol.style.Icon({ anchor: [0.5, 1], @@ -2385,7 +2410,38 @@ window.mapapi.removeLayer(window.jkspclusterLayer); window.mapapi.addLayer(window.qiyeclusterLayer); loading.close(); + window.mapapi.getView().on("change:resolution", function (event) { + if ( + window.mapapi.getView().getZoom() == + window.mapapi.getView().getMaxZoom() + ) { + clusterSource.setDistance(0); + } else { + clusterSource.setDistance(40); + } + }); + // 鐩戝惉鍦板浘鍗曞嚮浜嬩欢 + // window.mapapi.on("singleclick", function (e) { + // var pixel = window.mapapi.getEventPixel(e.originalEvent); + // var currentFeature = window.mapapi.forEachFeatureAtPixel( + // pixel, + // function (feature, layer) { + // return feature; + // } + // ); + // if (currentFeature) { + // var features = currentFeature.get("features"); + // if (features.length > 1) { + // console.log(features); + // window.alert("褰撳墠鑱氬悎鍦堜笅鍏辨湁" + features.length + "涓绱�"); + // } + // if (features.length == 1) { + // console.log(features); + // window.alert("褰撳墠瑕佺礌鏈鑱氬悎锛屽彧鏈�" + features.length + "涓绱�"); + // } + // } + // }); // let dataSource; // if (treeNode.layer == "浼佷笟閾句紒涓�") { // // console.log(store.qiyeJsonInfo); diff --git a/src/utils/map2.js b/src/utils/map2.js index 8c95bc8..2a78f53 100644 --- a/src/utils/map2.js +++ b/src/utils/map2.js @@ -2384,41 +2384,57 @@ let properties = feature.getProperties().features[0].values_; for (const propertyNames in properties) { if (propertyNames.indexOf("鐩戞帶鍚�") !== -1) { - // objdata = { - // POITYPE: "SPJK", - // name: properties["JK鍚嶇О"]._value, - // type: properties["JK绫诲瀷"]._value, - // function: properties["鍔熻兘"]._value, - // area: properties["鎵�鍦ㄥ尯"]._value, - // number: properties["JK缂栧彿"]._value, - // code: properties["JK鍐呯爜"]._value, - // lon: lon, - // lat: lat, - // } - Message({ - message: '杩炴帴鐘舵�佹煡璇腑', + const infoM = Message({ + message: '璇ョ偣浣嶈棰戠洃鎺ф煡璇腑锛岃绋嶅悗', type: 'info', - offset: 60, + offset: 75, center: true, - duration: 1000, + duration: 0, }); - layerOpen(properties["JK鍚嶇О"], { - width: "100%", - height: "40%", - // offset: [offsetTop + "px", "380px"], - url: "../../static/video/video.html?code=" + properties["JK鍐呯爜"], - fn: { - success: (layero, index) => { - SmartEarthPopupData.layerContainer = layero; - }, - end: () => { + axios + .get( + // 璇锋眰鍦ㄧ嚎鐘舵�� + window.gisBaseUrl + "BEApi/getCameraDetails?cameraIndexCode=" + + properties["JK鍐呯爜"] + ).then(res => { + if (res.data.data.status == 1) { + infoM.close(); + Message({ + message: '瑙嗛鐩戞帶鍦ㄧ嚎涓�', + type: 'success', + offset: 75, + center: true, + duration: 2000, + }); + layerOpen(properties["JK鍚嶇О"], { + width: "100%", + height: "40%", + // offset: [offsetTop + "px", "380px"], + url: "../../static/video/video.html?code=" + properties["JK鍐呯爜"], + fn: { + success: (layero, index) => { + SmartEarthPopupData.layerContainer = layero; + }, + end: () => { - }, - cancel: () => { + }, + cancel: () => { - }, - }, - }); + }, + }, + }); + } else { + infoM.close(); + Message({ + message: '璇ョ偣浣嶈棰戠洃鎺х绾夸腑', + type: 'errer', + offset: 75, + center: true, + duration: 2000, + }); + return + } + }) return } else if (propertyNames.indexOf("閮ㄤ欢鍚嶇О") !== -1) { objdata = { -- Gitblit v1.9.3