From a1a17b2a638276c5766991b99cccbfbc6c9a5160 Mon Sep 17 00:00:00 2001 From: wds Date: Tue, 10 Aug 2021 20:40:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=B0=E5=9B=BE=E4=B8=AD=E5=BF=83=E7=82=B9?= =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E5=88=B0=E5=B1=8F=E5=B9=95=E4=B8=8A=E7=9A=84?= =?UTF-8?q?3/1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/navinfo/outdoor/util/MapManager.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/src/main/java/com/navinfo/outdoor/util/MapManager.java diff --git a/app/src/main/java/com/navinfo/outdoor/util/MapManager.java b/app/src/main/java/com/navinfo/outdoor/util/MapManager.java new file mode 100644 index 0000000..7a005f2 --- /dev/null +++ b/app/src/main/java/com/navinfo/outdoor/util/MapManager.java @@ -0,0 +1,44 @@ +package com.navinfo.outdoor.util; + +import android.content.Context; + +import com.tencent.tencentmap.mapsdk.maps.CameraUpdate; +import com.tencent.tencentmap.mapsdk.maps.CameraUpdateFactory; +import com.tencent.tencentmap.mapsdk.maps.TencentMap; +import com.tencent.tencentmap.mapsdk.maps.model.CameraPosition; +import com.tencent.tencentmap.mapsdk.maps.model.LatLng; + +public class MapManager { + private static MapManager instance; + private TencentMap tencentMap; + private Context mContext; + + public static MapManager getInstance() { + if (instance == null) { + instance = new MapManager(); + } + return instance; + } + + public void init(Context mContext, TencentMap map) { + this.mContext = mContext; + this.tencentMap = map; + } + + public TencentMap getTencentMap() { + return tencentMap; + } + + // 将地图顶部中心定位到指定位置 + public void animateMapLocation2TopCenter(LatLng latLng, float x, float y) { + if (tencentMap!=null) { + tencentMap.setMapCenterAndScale(x, y, tencentMap.getCameraPosition().zoom); + CameraUpdate cameraSigma = CameraUpdateFactory.newCameraPosition(new CameraPosition( + latLng, //中心点坐标,地图目标经纬度 + tencentMap.getCameraPosition().zoom, //目标缩放级别 + tencentMap.getCameraPosition().tilt, //目标倾斜角[0.0 ~ 45.0] (垂直地图时为0) + tencentMap.getCameraPosition().bearing)); //目标旋转角 0~360° (正北方为0) + tencentMap.animateCamera(cameraSigma); + } + } +}