From c6512655e722d9ca80dd8c34b79f6d3923ecf86c Mon Sep 17 00:00:00 2001
From: 罗元桥 <2376770955@qq.com>
Date: 星期二, 22 六月 2021 16:07:50 +0800
Subject: [PATCH] Merge branch 'test' into 'test_screen'

---
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/LngLatUtils.java |   36 +++++++++++++++++++++++++++++++++++-
 1 files changed, 35 insertions(+), 1 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/LngLatUtils.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/LngLatUtils.java
index b83603c..57a76d5 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/LngLatUtils.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/LngLatUtils.java
@@ -27,7 +27,14 @@
         return peneralPath.contains(_point);
     }
 
-    public static  boolean isInPolygon(List<LatLngVO> bound, double pointlng, double pointLat)
+    /**
+     *
+     * @param bound 经纬度数组
+     * @param pointlng  短
+     * @param pointLat  长
+     * @return
+     */
+    public static  boolean isInPolygon(List<LatLngVO> bound, double pointlng,  double pointLat)
     {
         Point2D.Double point = new Point2D.Double(pointlng, pointLat);
         List<Point2D.Double> pointList = new ArrayList<>();
@@ -36,4 +43,31 @@
         }
         return check(point, pointList);
     }
+
+    /**
+     * 从txt数据中获取经纬度
+     * @param lngLatTxt
+     * @return
+     */
+    public static List<LatLngVO> getLatLngFromText(String lngLatTxt){
+        List<LatLngVO> rtResult = new ArrayList<>();
+        String str = lngLatTxt.replace("[[","");
+
+        str=str.replace("]]","");
+        String[] loca=str.split("],\\[");
+        for (int i=0;i<loca.length;i++)
+        {
+            String[] loca1=loca[i].split(",");
+            rtResult.add(new LatLngVO(Double.valueOf(loca1[0]), Double.valueOf(loca1[1])));
+        }
+        return rtResult;
+    }
+
+    public static void main(String[] args) {
+        String latLngTxt = "[[104.066974,30.660293],[104.053394,30.658114],[104.059921,30.657076],[104.065231,30.657086]]";
+        List<LatLngVO> latLngList = getLatLngFromText(latLngTxt);
+
+        System.out.println(isInPolygon(latLngList, 104.063398, 30.657929));
+    }
+
 }

--
Gitblit v1.7.1