经纬度关系计算及相关知识(球面距离、方位角)

本文介绍了如何使用Java实现经纬度间的距离计算及方位角的求解,包括经纬度转换成弧度、两点间距离计算公式及代码实现,并提供了一个具体的示例。

经纬度 39.99686300加1000米是多少:
http://zuoye.baidu.com/question/18b4cd5560953b96ee9a425d448fb064.html

经度1°等于多少千米,1′等于多少千米,1〃等于多少米:
http://zuoye.baidu.com/question/37bab1187c1793f4fc3ae9225db79f9a.html

在经线上,相差一纬度:
http://zhidao.baidu.com/link?url=_WSZ1-QbBeyVVFTvQcBDBhB2DA4JQCYjf4sQgFN1Rjzrabz2iwxvjyJRwjbWFt5e_U3PC8mmAfPbmG1pEGNAEq

 

求经纬度算面积
http://zhidao.baidu.com/question/711399588905395965.html?oldq=1

java求两经纬度点之间的距离
http://blog.163.com/zhengjiu_520/blog/static/35598306201303153248412/

 代码如下:

public class Test {
private static final double EARTH_RADIUS = 6378.137;
    private static double rad(double d){
       return d * Math.PI / 180.0;
    }    
    /**
     * 根据两点间经纬度坐标(double值),计算两点间距离,单位为米
     */
    public static double GetDistance(double lng1, double lat1, double lng2, double lat2) {
       double radLat1 = rad(lat1);
       double radLat2 = rad(lat2);
       double a = radLat1 - radLat2;
       double b = rad(lng1) - rad(lng2);
       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 * 10000) / 10000;
       return s;
    }
 public static void main(String[] args) {
  double distance = GetDistance( 120.771797,30.672199, 120.769531,30.671534); 
  System.out.println("Distance is:"+distance);
 }
}

 

java经纬度距离换算,根据距离算经纬度差值
http://blog.sina.com.cn/s/blog_49cc672f0100elsb.html

JAVA 计算两个经纬度关系计算(方位角等) 不错。
http://lszdb1983.blog.163.com/blog/static/20426348201273084842686/
 

计算方位角pab,
其中lat_a, lng_a是A的纬度和经度; lat_b, lng_b是B的纬度和经度。代码如下:

private double gps2d(double lat_a, double lng_a, double lat_b, double lng_b){
  double d = 0;
  lat_a=lat_a*Math.PI/180;
  lng_a=lng_a*Math.PI/180;
  lat_b=lat_b*Math.PI/180;
  lng_b=lng_b*Math.PI/180;
         
  d=Math.sin(lat_a)*Math.sin(lat_b)+Math.cos(lat_a)*Math.cos(lat_b)*Math.cos(lng_b-lng_a);
  d=Math.sqrt(1-d*d);
  d=Math.cos(lat_b)*Math.sin(lng_b-lng_a)/d;
  d=Math.asin(d)*180/Math.PI;
//d = Math.round(d*10000);
  return d;
}

  

两点经纬度求方位角、距离等
http://blog.sina.com.cn/s/blog_658a93570101hynw.html

已知两点经纬度求球面距离和方位角

http://wenku.baidu.com/link?url=yZeoIskQoYGO4oiiz7U44rwrn86vdC8fqF0mKVsjhutP9RZqD5xyUxKCDEfj5Q_nCklzvcRNJdq7caJgunlSE89SGo02z_kdysvef98ZHl7

 



转载于:https://www.cnblogs.com/gnivor/p/4348726.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值