aijinhui
2023-09-21 03bdf8738729b6055b0c5594628b261a3ebaaced
ard-work/src/main/java/com/ruoyi/utils/gis/GisUtil.java
@@ -108,6 +108,7 @@
        }
        return IsPtInPoly(point,pointList);
    }
    /**
     * 判断点是否在多边形内,如果点位于多边形的顶点或边上,也算做点在多边形内,直接返回true
     * @param point 检测点
@@ -181,7 +182,7 @@
    public static void main(String[] args) {
        // 125.097531,46.60029, 125.124731,46.584808
        //相机位置
        double[] camera = {125.146964331147,46.5580925811216,102};//经度,纬度,高度
       /* double[] camera = {125.146964331147,46.5580925811216,102};//经度,纬度,高度
        //看向的位置
        double[] lookAt = {125.155449,46.555108,0};//经度,纬度,高度
@@ -189,7 +190,16 @@
        double viewWidth = 150;//相机视域宽度
        double[] ptz = GisUtil.getCameraPTZ(camera, lookAt, viewAngle, viewWidth);
        System.out.println("ptz:" + Arrays.toString(ptz));
        System.out.println("ptz:" + Arrays.toString(ptz));*/
      //  double[] camera = {125.153903999999997,46.5600799999999992,258.430000000000007};
        GlobalCoordinates camera = new GlobalCoordinates(46.5600799999999992,125.153903999999997);
        double p = 212.70155;
        double distance = 4048.886568114861;
        GlobalCoordinates point = getGlobalCoordinates(camera, p, distance);
        System.out.println("point:");
        System.out.println("lon:"+point.getLongitude());
        System.out.println("lat:"+point.getLatitude());
    }
}