zoukankan      html  css  js  c++  java
  • Java根据经纬度算出附近正方形的四个角的经纬度

    项目开发中csv文件转化为geojson文件中,涉及到路测图的打点生成,打点是由一个个正方形组成,而正方形是由四个点组成的,这四个点根据经纬度和范围生成,实现代码参考网上:

    /**
         * 
         * @param longitude 经度
         * @param latitude    纬度
         * @param distance   范围(米)
         * @return
         */
        public static Map<String, double[]> returnLLSquarePoint(double longitude,  double latitude, double distance) {
            Map<String, double[]> squareMap = new HashMap<String, double[]>();
            // 计算经度弧度,从弧度转换为角度
            double dLongitude = 2 * (Math.asin(Math.sin(distance
                    / (2 * 6378137))
                    / Math.cos(Math.toRadians(latitude))));
            dLongitude = Math.toDegrees(dLongitude);
            // 计算纬度角度
            double dLatitude = distance / 6378137;
            dLatitude = Math.toDegrees(dLatitude);
            // 正方形
            double[] leftTopPoint = { latitude + dLatitude, longitude - dLongitude };
            double[] rightTopPoint = { latitude + dLatitude, longitude + dLongitude };
            double[] leftBottomPoint = { latitude - dLatitude,
                    longitude - dLongitude };
            double[] rightBottomPoint = { latitude - dLatitude,
                    longitude + dLongitude };
            squareMap.put("leftTopPoint", leftTopPoint);
            squareMap.put("rightTopPoint", rightTopPoint);
            squareMap.put("leftBottomPoint", leftBottomPoint);
            squareMap.put("rightBottomPoint", rightBottomPoint);
            System.out.println("leftTop:"+leftTopPoint[0]+"======"+leftTopPoint[1]);
            System.out.println("rightTop:"+rightTopPoint[0]+"======"+rightTopPoint[1]);
            System.out.println("leftBottom:"+leftBottomPoint[0]+"======"+leftBottomPoint[1]);
            System.out.println("rightBottom:"+rightBottomPoint[0]+"======"+rightBottomPoint[1]);
            return squareMap;
        }
    

    参考:JAVA 根据经纬度算出附近的正方形的四个角的经纬度

  • 相关阅读:
    thinkphp 5 隐藏index.php
    jquery ajax参数
    图标字的使用方法
    jquery监听浏览宽度
    手机屏幕的宽度自动适应
    前站常用代码
    服务消费者(Feign-上)
    服务消费者(Ribbon)
    注册中心(Eureka/Consul)
    JDK8 日期格式化
  • 原文地址:https://www.cnblogs.com/liaoguanwang/p/10575490.html
Copyright © 2011-2022 走看看