浏览代码

修改超出范围检查的范围,改为按大地两千范围

欧阳劲驰 2 周之前
父节点
当前提交
aa373b4188

+ 0 - 58
src/main/java/com/shkpr/service/alambizplugin/commtools/GeomUtil.java

@@ -1,12 +1,8 @@
 package com.shkpr.service.alambizplugin.commtools;
 
 import org.locationtech.jts.geom.GeometryFactory;
-import org.locationtech.jts.geom.Point;
 import org.locationtech.jts.geom.PrecisionModel;
 
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-
 /**
  * 地理工具类
  *
@@ -18,59 +14,5 @@ public class GeomUtil {
      * geom工厂
      */
     private static final GeometryFactory geometryFactory = new GeometryFactory(new PrecisionModel(), 4490);
-    /**
-     * 地球半径
-     */
-    private static final int EARTH_RADIUS = 6378137;
-
-    /**
-     * 将米转换为度
-     *
-     * @param degrees 度
-     * @return 对应的米
-     */
-    public static double convertDegreesToMeters(double degrees) {
-        return degrees * (Math.PI / 180) * EARTH_RADIUS;
-    }
 
-
-    /**
-     * 将米转换为度
-     *
-     * @param meters 米
-     * @return 对应的度
-     */
-    public static double convertMetersToDegrees(double meters) {
-        return meters / (Math.PI / 180 * EARTH_RADIUS);
-    }
-
-    /**
-     * 经纬度的度转十进制
-     * <p>如RMC(NMEA0183)协议报文:</p>
-     * <blockquote><pre>$GNRMC,072905.00,A,3640.46260,N,11707.54950,E,000.0,000.0,050119,OK*24</pre></blockquote>
-     * <p>则表示为:{@code [36.67438,117.12583]}</p>
-     *
-     * @param degrees      度
-     * @param minutesIndex 分索引,如 {@code  ddmm.mmmmm} 则为2
-     * @return 十进制表示
-     */
-    public static double convertDegreesToDecimal(String degrees, int minutesIndex) {
-        return Integer.parseInt(degrees.substring(0, minutesIndex)) +
-                //分除60保留8位
-                BigDecimal.valueOf(Float.parseFloat(degrees.substring(minutesIndex)))
-                        .divide(BigDecimal.valueOf(60), 8, RoundingMode.HALF_UP)
-                        .doubleValue();
-    }
-
-    /**
-     * 判断点1是否在点2距离范围内
-     *
-     * @param point1   点1
-     * @param point2   点2
-     * @param distance 距离(米)
-     * @return 判断状态
-     */
-    public static Boolean isWithinDistance(Point point1, Point point2, double distance) {
-        return point1.isWithinDistance(point2, convertMetersToDegrees(distance));
-    }
 }

+ 5 - 5
src/main/java/com/shkpr/service/alambizplugin/components/checker/InvalidPropertiesFinder.java

@@ -3,7 +3,6 @@ package com.shkpr.service.alambizplugin.components.checker;
 import com.global.base.log.LogLevelFlag;
 import com.global.base.log.LogPrintMgr;
 import com.shkpr.service.alambizplugin.commtools.BeanUtil;
-import com.shkpr.service.alambizplugin.commtools.GeomUtil;
 import com.shkpr.service.alambizplugin.commtools.ThirdImportTemplateUtils;
 import com.shkpr.service.alambizplugin.constants.GisMetadataDefine;
 import com.shkpr.service.alambizplugin.constants.GisSurveyExcelDefine;
@@ -39,10 +38,11 @@ public class InvalidPropertiesFinder {
     /**
      * 中国经纬度范围
      */
-    private static final Double MIN_LAT = GeomUtil.convertDegreesToDecimal("351", 1);
-    private static final Double MAX_LAT = GeomUtil.convertDegreesToDecimal("5333", 2);
-    private static final Double MIN_LNG = GeomUtil.convertDegreesToDecimal("7333", 2);
-    private static final Double MAX_LNG = GeomUtil.convertDegreesToDecimal("13505", 3);
+    private static final Double MIN_LNG = 73.62;
+    private static final Double MAX_LNG = 134.77;
+    private static final Double MIN_LAT = 16.7;
+    private static final Double MAX_LAT = 53.56;
+
     /**
      * log
      */