白银网站模板,建筑工程网上保健网站,如果做微商需不需要开个网站。,产品vi设计java实现计算两经纬度点之间的距离#xff0c;直接上代码#xff0c;具体解释请参考注释package com.jttx.poi.utils;import com.jttx.poi.entity.point;/*** created by louis on 2014/9/2.*/public class geoutils {/*** 计算两经纬度点之间的距离(单位#xff1a;米)* pa…java实现计算两经纬度点之间的距离直接上代码具体解释请参考注释package com.jttx.poi.utils;import com.jttx.poi.entity.point;/*** created by louis on 2014/9/2.*/public class geoutils {/*** 计算两经纬度点之间的距离(单位米)* param lng1 经度* param lat1 纬度* param lng2* param lat2* return*/public static double getdistance(double lng1,double lat1,double lng2,double lat2){double radlat1 math.toradians(lat1);double radlat2 math.toradians(lat2);double a radlat1 - radlat2;double b math.toradians(lng1) - math.toradians(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 * 6378137.0;// 取wgs84标准参考椭球中的地球长半径(单位:m)s math.round(s * 10000) / 10000;return s;}/*** 计算tp值* param curpoint 当前点* param relatedpoint 偏移点* param isgeography 是否是地理坐标 false为2d坐标* return tp值*/public static double getdirangle(point curpoint,point relatedpoint,boolean isgeography){double result 0;if(isgeography){double y2 math.toradians(relatedpoint.getlat());double y1 math.toradians(curpoint.getlat());double alpha math.atan2(relatedpoint.getlat() - curpoint.getlat(), (relatedpoint.getlng() - curpoint.getlng()) * math.cos((y2 - y1) / 2));//纬度方向乘以cos(y2-y1/2)double delta alpha0?(2*math.pialpha):alpha;result math.todegrees(delta);}else {double alpha math.atan2(relatedpoint.getlat() - curpoint.getlat(), relatedpoint.getlng() - curpoint.getlng());double deltaalpha0?(2*math.pialpha):alpha;result math.todegrees(delta);}return result;}public static void main(string[] args) {system.out.println(getdistance(121.446014,31.215937,121.446028464238,31.2158502442799 ));}}以上就是本文的全部内容了希望大家能够喜欢。希望与广大网友互动点此进行留言吧