//第一种苹果自带的

[cpp] view plaincopy
  1. CLLocation *orig=[[[CLLocation alloc] initWithLatitude:[mainDelegate.latitude_self doubleValue]  longitude:[mainDelegate.longitude_self doubleValue]] autorelease];
  2. CLLocation* dist=[[[CLLocation alloc] initWithLatitude:[tmpNewsModel.latitude doubleValue] longitude:[tmpNewsModel.longitude doubleValue] ] autorelease];
  3. CLLocationDistance kilometers=[orig distanceFromLocation:dist]/1000;
  4. NSLog(@"距离:",kilometers);

//第二种,手动计算

[cpp] view plaincopy
  1. #pragma mark - calculate distance  根据2个经纬度计算距离
  2. #define PI 3.1415926
  3. +(double) LantitudeLongitudeDist:(double)lon1 other_Lat:(double)lat1 self_Lon:(double)lon2 self_Lat:(double)lat2{
  4. double er = 6378137; // 6378700.0f;
  5. //ave. radius = 6371.315 (someone said more accurate is 6366.707)
  6. //equatorial radius = 6378.388
  7. //nautical mile = 1.15078
  8. double radlat1 = PI*lat1/180.0f;
  9. double radlat2 = PI*lat2/180.0f;
  10. //now long.
  11. double radlong1 = PI*lon1/180.0f;
  12. double radlong2 = PI*lon2/180.0f;
  13. if( radlat1 < 0 ) radlat1 = PI/2 + fabs(radlat1);// south
  14. if( radlat1 > 0 ) radlat1 = PI/2 - fabs(radlat1);// north
  15. if( radlong1 < 0 ) radlong1 = PI*2 - fabs(radlong1);//west
  16. if( radlat2 < 0 ) radlat2 = PI/2 + fabs(radlat2);// south
  17. if( radlat2 > 0 ) radlat2 = PI/2 - fabs(radlat2);// north
  18. if( radlong2 < 0 ) radlong2 = PI*2 - fabs(radlong2);// west
  19. //spherical coordinates x=r*cos(ag)sin(at), y=r*sin(ag)*sin(at), z=r*cos(at)
  20. //zero ag is up so reverse lat
  21. double x1 = er * cos(radlong1) * sin(radlat1);
  22. double y1 = er * sin(radlong1) * sin(radlat1);
  23. double z1 = er * cos(radlat1);
  24. double x2 = er * cos(radlong2) * sin(radlat2);
  25. double y2 = er * sin(radlong2) * sin(radlat2);
  26. double z2 = er * cos(radlat2);
  27. double d = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)+(z1-z2)*(z1-z2));
  28. //side, side, side, law of cosines and arccos
  29. double theta = acos((er*er+er*er-d*d)/(2*er*er));
  30. double dist  = theta*er;
  31. return dist;
  32. }

IOS根据经纬度算距离相关推荐

  1. 根据经纬度算距离,返回结果单位是公里,先纬度,后经度

    /*** 根据经纬度算距离,返回结果单位是公里,先纬度,后经度* @param $lat1* @param $lng1* @param $lat2* @param $lng2* @return flo ...

  2. 经纬度算距离方法(续)

    前言 上篇文章整理了2种经纬度转距离的方法:经纬度转平面坐标xy并算距离代码 一种是通过半正矢公式,将地球近似为一个规则球体. 另一种是先转成平面坐标再计算距离,转成平面坐标时考虑投影坐标系参数. 这 ...

  3. 米转经纬度;经纬度算距离

    //米转地理距离度 private static double meterToDegree(double len){double ra = Math.pow((Math.pow(len, -1)) * ...

  4. 2021-07-18 用经纬度算距离

    Jkoooo 粉丝: 3702 文章: 9 关注 突然对于经纬度与距离感兴趣了(公选课讲到东风系列弹道导弹射程),就想了解一下如何通过经纬度来计算距离.百度了一下,觉得不满意就自己尝试做一下,都是些基 ...

  5. 知道两点经纬度算距离

    #define  PI       3.14159265358979323 //3.14159265353846 //当计算两点间距离时,经纬度差小于下面的门限值用地球半径,大于下面门限时用大圆算 # ...

  6. oracle 经纬度算距离,根据经纬度诀别用java和Oracle存储过程计算两点距离

    根据经纬度分别用java和Oracle存储过程计算两点距离 create or replace procedure SP_GET_DISTANCE (cx in number,cy in number ...

  7. php经纬度换算距离,PHP根据经纬度坐标计算距离

    PHP根据经纬度坐标计算距离 在有些应用中需要用到计算距离的功能,例如附近的商家.离我最近等功能. W为纬度对应的弧度,J为经度对应的弧度,如上图所示 下面代码  lat是纬度  lng是经度 看类代 ...

  8. android double值排序,android根据Double类型数据经纬度算出距离再根据距离实现排序功能...

    前言 项目中用到全国的加油站数据加载 并根据经纬度算出距离 然后根据距离从小到大排序 主要是数据类型是Double 这里必须对数据进行封装 实现也不难 这里讲一下自己的实现方法和实现思路 效果图 先来 ...

  9. 如何使用sql语句算两经纬度的距离

    本文章转载于https://segmentfault.com/a/1190000013922206 经纬度计算距离公式 对以上公式描述 1.Lung1 Lat1表示A点经纬度, Lung2 Lat2表 ...

  10. 经纬度转平面坐标xy并算距离代码

    经纬度算直线距离通常有2种方法,比较常用的是第一种. 方法一:半正矢公式 第一种方法是通过半正矢公式推导 这种方法的优点是公式简单,计算快,缺点是地球并不是标准的球体,存在一定的误差 public d ...

最新文章

  1. 神经网络版员工离职预测
  2. 怎么发表论文能保证被收录
  3. vb.net 与 c# 的switch ... case ...的一个重要区别
  4. 【译】前端框架技术选型 React vs. Vue (vs. Angular)
  5. linux下如何查看某个容器的详细信息?
  6. C# 图像编程 (1) 准备工作; 你好,空姐; 为空姐照片添加特效
  7. gnome2 卷起_推荐4个非常漂亮的Gnome 3.2 主题[PPA]
  8. Mac 终端失效如何解救
  9. python word转pdf图片格式_Python将word转换为PDF格式文件(包括批处理转换),Word,Pdf,包含,批量...
  10. MyEclipse详细使用教程
  11. python语言实例-Python代码样例列表
  12. Java常用日志框架介绍(转载)
  13. AutoCAD Civil 3D创建点文件描述码(点特征码)集控制展点样式与特性
  14. 头哥实践教学平台 CC++程序设计(计算机程序设计)基本输入输出 第2关:整数四则运算表达式的输出格式控制
  15. iOS-记一些官网地址
  16. HDFS的常用操作--hdfs下的文件操作常用命令总结
  17. 恩墨学院举办OCM联盟活动BDA大数据联盟春季活动
  18. java原始人生存繁殖的游戏,一款原始人生存繁殖的游戏
  19. 头条权重是什么?头条权重怎么查询?
  20. Alcohol 120%刻录教程:刻录镜像文件

热门文章

  1. CSRF--跨站请求伪造
  2. **电压跟随器的原理**
  3. mac抓包工具charles破解版安装及简单使用
  4. Python周刊520期
  5. ps css圆形路径文字,ps圆形路径文字怎么做
  6. Bicomb+spss进行共现分析并可视化(附安装包)
  7. 【大话传送网-学习笔记】传送网与GSM网络
  8. 新手如何Reverces(3自动化逆向篇)
  9. java get中文乱码怎么解决_java中get请求中文乱码怎么办?
  10. 中国移动面试总结(一)