‘liusuyi’
2023-08-22 da1432df263aa1aa4390f54b2635bb70e7f5207b
优化实体
已修改5个文件
39 ■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/utils/tools/GisTool.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/utils/tools/Point.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java
@@ -202,9 +202,7 @@
                    if (lon == null || lat == null) {
                        continue;
                    }
                    Point point2D=new Point();
                    point2D.setLongitude(lon);
                    point2D.setLatitude(lat);
                    Point point2D=new Point(lon,lat);
                    boolean inPolygon = GisTool.isInPolygon(point2D, partitionLocation);
                    if (inPolygon) {
                        Map<String, Object> params = new HashMap<>();
ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java
@@ -375,9 +375,7 @@
                    continue;
                }
                /*判断坐标是否在多边形范围内*/
                Point camPosition=new Point();
                camPosition.setLongitude(camera.getLongitude());
                camPosition.setLatitude(camera.getLatitude());
                Point camPosition=new Point(camera.getLongitude(),camera.getLatitude());
                boolean inPolygon = GisTool.isInPolygon(camPosition, partitionLocation);
                if (inPolygon) {
                    /*获取通道列表*/
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
@@ -1143,9 +1143,7 @@
                List<Map<String, Object>> carGPSMap = (List<Map<String, Object>>) carGPSTrack.get("list");
                Double lng = Double.valueOf((String) carGPSMap.get(0).get("lng"));
                Double lat = Double.valueOf((String) carGPSMap.get(0).get("lat"));
                Point point = new Point();
                point.setLongitude(lng);
                point.setLatitude(lat);
                Point point = new Point(lng,lat);
                boolean inPolygon = GisTool.isInPolygon(point, partitionLocation);
                if (inPolygon) {
                    carMap.put("longitude", lng);
ard-work/src/main/java/com/ruoyi/utils/tools/GisTool.java
@@ -35,15 +35,15 @@
    }
    public static void main(String[] args) {
//        // 被检测的经纬度点
//        Point point= new Point(126.649261,45.687377);
//        // 商业区域(百度多边形区域经纬度集合)
//        List<Point> partitionLocation = new ArrayList<>();
//        partitionLocation.add(new Point(126.64459,45.688548));
//        partitionLocation.add(new Point(126.653376,45.68938));
//        partitionLocation.add(new Point(126.645776,45.685048));
//        partitionLocation.add(new Point(126.654184,45.685778));
//        System.out.println(isInPolygon(point,partitionLocation));
        // 被检测的经纬度点
        Point point= new Point(126.649261,45.687377);
        // 商业区域(百度多边形区域经纬度集合)
        List<Point> partitionLocation = new ArrayList<>();
        partitionLocation.add(new Point(126.64459,45.688548));
        partitionLocation.add(new Point(126.653376,45.68938));
        partitionLocation.add(new Point(126.645776,45.685048));
        partitionLocation.add(new Point(126.654184,45.685778));
        System.out.println(isInPolygon(point,partitionLocation));
    }
    /**
ard-work/src/main/java/com/ruoyi/utils/tools/Point.java
@@ -1,7 +1,10 @@
package com.ruoyi.utils.tools;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
 * @Description:
@@ -11,8 +14,14 @@
 * @Version: 1.0
 **/
@Data
@NoArgsConstructor
public class Point{
    private static final long serialVersionUID = 1L;
    private Double longitude;
    private Double latitude;
    @JsonCreator
    public Point(@JsonProperty("x") Double x, @JsonProperty("y") Double y) {
        this.longitude = x;
        this.latitude = y;
    }
}