当前位置: 首页 > news >正文

java -测距工具(经纬度)

代码

/*** 测距工具* @author qb*/
public class DistanceUtils {/*** 赤道半径*/private static final double EARTH_RADIUS = 6378.137;private static double rad(double d) {return d * Math.PI / 180.0;}/*** Description : 通过经纬度获取距离(单位:米)* Group :** @param originLon      出发点经度* @param originLat      出发点纬度* @param destinationLon 目的地经度* @param destinationLat 目的地纬度* @return double*/@SuppressWarnings("all")public static double getDistance(String originLon, String originLat, String destinationLon,String destinationLat) {double radLat1 = rad(Double.parseDouble(originLat));double radLat2 = rad(Double.parseDouble(destinationLat));double a = radLat1 - radLat2;double b = rad(Double.parseDouble(originLon)) - rad(Double.parseDouble(destinationLon));double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2)+ Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));s = s * EARTH_RADIUS;// 保留两位小数s = Math.round(s * 100d) / 100d;s = s * 1000;return s;}public static void main(String[] args) {final String longitude = "117.127823";final String dimension = "36.674049";final String longitudeParam = "117.11764544907382";final String dimensionParam = "36.687643568521786";double distance = getDistance(longitude, dimension, longitudeParam, dimensionParam);System.out.println(distance);System.out.println(distance > 200);}}
http://www.lryc.cn/news/58277.html

相关文章:

  • postgres分区表的创建-基于继承
  • Docker应用部署
  • 使用golang实现日志收集系统的logagent
  • 小红书点赞不显示怎么回事?小红书笔记评论被吞怎么办
  • 地址变换和缺页置换习题
  • PAT 乙级 1010 一元多项式求导(解题思路+AC代码)
  • 一维河流污染持续排放模拟(水污染扩散)
  • 数据优化 | CnOpenDataA股上市公司招聘数据
  • nacos和eureka的区别
  • canvas.toDataURL生成图片报错的解决方案
  • 电容笔和Apple pencil的区别是什么?好用电容笔推荐
  • 关于onnx 转ncnn 的问题
  • 设计模式之《责任链模式》
  • Android Studio实现多功能日记本
  • 只依赖Tensorrt和opencv的yolov5源代码
  • 多路I/O转接 poll(了解)
  • 听说你也在为配置tomcat server而烦恼,看我这一篇,让你醍醐灌顶!
  • 【从零开始学Skynet】工具篇(二):虚拟机文件的复制粘贴
  • 全球自动驾驶竞争力最新排行榜,4家中国企业上榜
  • APP启动流程分析
  • IIR数字滤波器简介与实现
  • 3.5 函数的极值与最大值和最小值
  • 第五十八天打卡
  • 双一流大学计算机专业月薪拿2000?网友:我裂开
  • ChatGPT的“N宗罪”?|AI百态(上篇)
  • 48.现有移动端开源框架及其特点—MDL(mobile-deep-learning)
  • 4.9--计算机网络之TCP篇之TCP Keepalive 和 HTTP Keep-Alive --(复习+大总结)---沉淀ing
  • qt完善登录界面(2023-4-6)
  • 104.(cesium篇)cesium卫星轨道模拟
  • Linux shell编程