博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA 根据经纬度算出附近的正方形的四个角的经纬度
阅读量:5277 次
发布时间:2019-06-14

本文共 1671 字,大约阅读时间需要 5 分钟。

  /**     *      * @param longitude    经度     * @param latitude    纬度     * @param distance    范围(米)     * @return     */    public static Map
returnLLSquarePoint(double longitude, double latitude, double distance) { Map
squareMap = new HashMap
(); // 计算经度弧度,从弧度转换为角度 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; }

 

转载于:https://www.cnblogs.com/chen-lhx/p/5800187.html

你可能感兴趣的文章
spring声明式事务 同一类内方法调用事务失效
查看>>
JUnit - 测试框架
查看>>
MySQL-数据类型及选择
查看>>
简单的注册表单
查看>>
caffe c++
查看>>
概率图模型课本笔记(五)
查看>>
数据库MySQL/mariadb知识点——存储过程及存储引擎
查看>>
决策树
查看>>
动态规划走楼梯问题
查看>>
mvc模型绑定问题
查看>>
评价现在的输入法
查看>>
美国行照片集之十二:一日两季
查看>>
素数回文(高效判断素数法)
查看>>
用户和组管理
查看>>
网络通信原理 五层协议
查看>>
本地化中文示例代码需求调查
查看>>
JavaScript基础——使用运算符
查看>>
CentOS7安装CDH 第十三章:CDH资源池配置
查看>>
DMSLinq表达式框架实现(一)
查看>>
图论---图的m-点着色判定问题(回溯法--迭代式)
查看>>