From 1f96f089eb3546c682313d29513be04ac72e2de5 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期二, 31 十月 2023 16:21:08 +0800 Subject: [PATCH] Merge branch 'master' of ssh://114.215.109.124:29418/grid-management-vue --- src/components/map/baseMapUtil.js | 55 ++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 40 insertions(+), 15 deletions(-) diff --git a/src/components/map/baseMapUtil.js b/src/components/map/baseMapUtil.js index 735b58e..02b6601 100644 --- a/src/components/map/baseMapUtil.js +++ b/src/components/map/baseMapUtil.js @@ -80,21 +80,31 @@ }); }, + addMarker(lnglat) { + const marker = new AMap.Marker({ + position: lnglat + }); + map.add(marker); + this.setCenter(lnglat); + return marker; + }, + + setCenter(lnglat) { + map.setCenter(lnglat); + }, + /** * 缂╂斁鍦板浘鍒板悎閫傜殑瑙嗛噹绾у埆 */ - setFitView(overlays, type = 0) { + setFitView(...overlays) { const _overlays = toRaw(overlays); - switch (type) { - case 0: - map.setFitView([_overlays]); - break; - case 1: - map.setFitView(_overlays); - break; - default: - map.setFitView([_overlays]); - break; + map.setFitView(_overlays, true, [60, 60, 500, 60], 14.5); + }, + + addView(overlays) { + if (overlays) { + const _overlays = toRaw(overlays); + map.add(_overlays); } }, @@ -102,8 +112,10 @@ * 绉婚櫎瑕嗙洊鐗� */ removeView(overlays) { - const _overlays = toRaw(overlays); - map.remove(_overlays); + if (overlays) { + const _overlays = toRaw(overlays); + map.remove(_overlays); + } }, /** @@ -133,8 +145,10 @@ (((a * (1 - ee)) / (magic * sqrtmagic)) * PI); dlng = (dlng * 180.0) / ((a / sqrtmagic) * Math.cos(radlat) * PI); - let mglat = Math.round((lat * 2 - lat - dlat) * 1000000) / 1000000; - let mglng = Math.round((lng * 2 - lng - dlng) * 1000000) / 1000000; + let mglat = + Math.round((lat * 2 - lat - dlat) * 1000000) / 1000000; + let mglng = + Math.round((lng * 2 - lng - dlng) * 1000000) / 1000000; return [mglng, mglat]; } }, @@ -164,5 +178,16 @@ let mglng = Math.round((lng + dlng) * 1000000) / 1000000; return [mglng, mglat]; } + }, + gpsConvert(gps) { + return new Promise((reject) => { + // 鍙傛暟璇存槑锛氶渶瑕佽浆鎹㈢殑鍧愭爣锛岄渶瑕佽浆鎹㈢殑鍧愭爣绫诲瀷锛岃浆鎹㈡垚鍔熷悗鐨勫洖璋冨嚱鏁� + AMap.convertFrom(gps, 'baidu', function (status, result) { + if (result.info === 'ok') { + var lnglats = result.locations; // 杞崲鍚庣殑楂樺痉鍧愭爣 Array.<LngLat> + reject(lnglats[0]); + } + }); + }); } }; -- Gitblit v1.9.3