GPS坐标间距运算
来源:互联网 发布:大众软件2007电子版 编辑:程序博客网 时间:2024/05/18 21:40
从IOS或者android端获取GPS经纬度坐标,获取GPS坐标间距运算,具体代码如下
package com.common.util;
/*
* 将度分秒单位数据转换为度单位数据 度 = 度 + 分 / 60 + 秒 / 60 / 60 例如: 经度 = 116°20’43” 纬度 =
* 39°12’37” 经度 = 116 + 20 / 60 + 43 / 60 / 60 = 116.34528° 纬度 = 39 + 12 /
* 60 + 37 / 60 / 60 = 39.21028° NTU经度 = 116.34528 * 100000 = 11634528(NTU)
* NTU纬度 = 39.21028 * 100000 = 3921028(NTU) 其格式的经纬值先转换度,再运算。
*
* 比如:点A的经度为11695400,纬度为3995400。点B的经度为11695300,纬度为3995300。 公式:两点间距离 = [
* (A点经度 - B点经度)^2 + (A点纬度 - B点纬度)^2 ] ^ (1/2) = [ (11695400 - 11695300)^2 +
* (3995400 - 3995300)^2 ] ^(1/2) =(10000+10000) ^ (1/2) =141米
*/
public class GPSUtils {
/**
* 求a,b两坐标间距(单位:米)
* @param lata
* a点的经度
* @param lona
* a点的纬度
* @param latb
* b点的经度
* @param lonb
* b点的纬度
* @return
*/
public static double betweenDistance(double lata, double lona, double latb,
double lonb) {
double lataNTU = lata*100000;
double lonaNTU = lona*100000;
double latbNTU = latb*100000;
double lonbNTU = lonb*100000;
double latV = Math.abs(lataNTU - latbNTU);
double lonV = Math.abs(lonaNTU - lonbNTU);
double rls = (latV * latV) + (lonV * lonV);
rls = Math.sqrt(rls);
return rls;
}
public static void main(String[] args) {
Double a = betweenDistance(113.30001,22.9155, 113.30000,22.9155);
System.out.println(a);
}
}
- GPS坐标间距运算
- 基于WGS-84坐标系的GPS坐标下两点间距离计算 VB.net实现
- 坐标两点之间距
- Android GPS两点间距离
- gps坐标转火星坐标
- 百度坐标转换GPS坐标
- GPS坐标转笛卡尔坐标
- GPS坐标转换
- Android获取GPS坐标:
- GPS坐标换算
- GPS坐标转换
- GPS坐标转换
- GPS 坐标转换
- Android获取GPS坐标
- Android获得GPS坐标
- GPS坐标转换
- 获取GPS地球坐标
- gps坐标 转 省市区
- 生活
- C++基本语法
- [The 2011 ACM-ICPC ACRC]G.GRE Words
- android HttpClient 上传图片
- C++ Hadoop实战备忘
- GPS坐标间距运算
- 关于数据库连接的一些问题
- 我们应当怎样做需求分析:查询报表分析(13)
- C语言中 #和##的运用
- 热身赛zju2008:找旅馆_hdu1871
- [C/C++相关]C语言判断文件夹或者文件是否存在的方法
- 安装linux系统时的分区挂载.磁盘分区
- C#读写文件
- java实现webservice实例