From f23be5d1086538d541281b84d8b093f95c545c47 Mon Sep 17 00:00:00 2001
From: lmw <125975490@qq.com>
Date: 星期一, 23 九月 2024 17:08:43 +0800
Subject: [PATCH] save

---
 app/src/main/java/com/future/driver/base/gaode/AMapKit.kt |   56 +++++++++++++++++++++++++++++++-------------------------
 1 files changed, 31 insertions(+), 25 deletions(-)

diff --git a/app/src/main/java/com/future/driver/base/gaode/AMapKit.kt b/app/src/main/java/com/future/driver/base/gaode/AMapKit.kt
index 0885a43..da8d599 100644
--- a/app/src/main/java/com/future/driver/base/gaode/AMapKit.kt
+++ b/app/src/main/java/com/future/driver/base/gaode/AMapKit.kt
@@ -37,7 +37,6 @@
 
 
 object AMapKit {
-
     fun initLocation(context: Context, lisener: AMapLocationListener) { //初始化定位
         var mlocationClient = AMapLocationClient(context)
         //初始化定位参数
@@ -126,11 +125,7 @@
     }
 
     fun moveCamera(aMap: AMap, start: LatLng?, end: LatLng?) {
-        var bounds: LatLngBounds? = null
-        if (start!!.latitude < end!!.latitude)
-            bounds = LatLngBounds(start, end)
-        else
-            bounds = LatLngBounds(end, start)
+        var bounds: LatLngBounds = getLatLngBounds(start!!,end!!)
         val mCameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, 150)
         aMap.animateCamera(mCameraUpdate, object : AMap.CancelableCallback {
             override fun onFinish() {
@@ -141,6 +136,13 @@
                 sysErr("onCancel")
             }
         })
+    }
+
+    fun getLatLngBounds(start: LatLng, end: LatLng): LatLngBounds {
+        val b = LatLngBounds.builder()
+        b.include(LatLng(start.latitude, start.longitude))
+        b.include(LatLng(end.latitude, end.longitude))
+        return b.build()
     }
 
     fun moveCamera(aMap: AMap, start: LatLng?, end: LatLng?, padd: Int) {
@@ -242,10 +244,10 @@
     /***
      * 绘制圆形形围栏
      */
-    fun drawFenceByCricle(context: Context, dPoint: DPoint,bg:Float, va1: GeoFenceListener) {
+    fun drawFenceByCricle(context: Context, dPoint: DPoint, bg: Float, va1: GeoFenceListener) {
         val mGeoFenceClient = GeoFenceClient(context)
         mGeoFenceClient.setActivateAction(GeoFenceClient.GEOFENCE_IN)
-        mGeoFenceClient.addGeoFence("", "",dPoint,bg,-1,"")
+        mGeoFenceClient.addGeoFence("", "", dPoint, bg, -1, "")
         mGeoFenceClient.setGeoFenceListener(va1);
     }
 
@@ -253,18 +255,17 @@
     fun drawFace(context: Context, aMap: AMap, latLngs: List<LatLng?>?): Polygon? {
         var po = PolygonOptions().addAll(latLngs)
             .fillColor(ContextCompat.getColor(context, R.color.l_transparent_10)).strokeColor(
-            Color.RED
-        ).strokeWidth(1f)
+                Color.RED
+            ).strokeWidth(1f)
         return aMap.addPolygon(po)
     }
 
-    fun drawCricle(context: Context, aMap: AMap, latLng: LatLng,bg:Double): Circle? {
-        return  aMap.addCircle(CircleOptions().
-            center(latLng).
-            radius(bg).
-            fillColor(ContextCompat.getColor(context, R.color.l_transparent_10)).
-            strokeColor( Color.RED).
-            strokeWidth(1f));
+    fun drawCricle(context: Context, aMap: AMap, latLng: LatLng, bg: Double): Circle? {
+        return  aMap.addCircle(
+            CircleOptions().center(latLng).radius(bg)
+                .fillColor(ContextCompat.getColor(context, R.color.l_transparent_10))
+                .strokeColor(Color.RED).strokeWidth(1f)
+        );
     }
 
 
@@ -492,17 +493,17 @@
     /***
      * 逆地址编码
      */
-    fun getAddress(context: Context,lat:Double,lon:Double,function:(String)->Unit) {
+    fun getAddress(context: Context, lat: Double, lon: Double, function: (String) -> Unit) {
         var geocoderSearch = GeocodeSearch(context);
         // 第一个参数表示一个Latlng,第二参数表示范围多少米,第三个参数表示是火系坐标系还是GPS原生坐标系
-        var query =  RegeocodeQuery(LatLonPoint(lat,lon), 500f,GeocodeSearch.AMAP);
+        var query =  RegeocodeQuery(LatLonPoint(lat, lon), 500f, GeocodeSearch.AMAP);
         geocoderSearch.getFromLocationAsyn(query);
         geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
             override fun onRegeocodeSearched(p0: RegeocodeResult?, p1: Int) {
                 p0?.let {
-                    if (p1 != 1000){
+                    if (p1 != 1000) {
                         function("")
-                    }else{
+                    } else {
                         function(it.regeocodeAddress.adCode)
                     }
                 }
@@ -518,17 +519,22 @@
     /***
      * 逆地址编码
      */
-    fun getAddressReg(context: Context,lat:Double,lon:Double,function:(RegeocodeAddress)->Unit) {
+    fun getAddressReg(
+        context: Context,
+        lat: Double,
+        lon: Double,
+        function: (RegeocodeAddress) -> Unit
+    ) {
         var geocoderSearch = GeocodeSearch(context);
         // 第一个参数表示一个Latlng,第二参数表示范围多少米,第三个参数表示是火系坐标系还是GPS原生坐标系
-        var query =  RegeocodeQuery(LatLonPoint(lat,lon), 500f,GeocodeSearch.AMAP);
+        var query =  RegeocodeQuery(LatLonPoint(lat, lon), 500f, GeocodeSearch.AMAP);
         geocoderSearch.getFromLocationAsyn(query);
         geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener {
             override fun onRegeocodeSearched(p0: RegeocodeResult?, p1: Int) {
                 p0?.let {
-                    if (p1 != 1000){
+                    if (p1 != 1000) {
 
-                    }else{
+                    } else {
                         function(it.regeocodeAddress)
                     }
                 }

--
Gitblit v1.7.1