永发信息网

将JAVA代码转换成asp

答案:3  悬赏:50  手机版
解决时间 2021-03-15 08:30
谢谢啦,希望效果和这个JAVA效果一致就行

[java] view plaincopy

public double getDistance(LatLng start,LatLng end){
double lat1 = (Math.PI/180)*start.latitude;
double lat2 = (Math.PI/180)*end.latitude;

double lon1 = (Math.PI/180)*start.longitude;
double lon2 = (Math.PI/180)*end.longitude;

// double Lat1r = (Math.PI/180)*(gp1.getLatitudeE6()/1E6);
// double Lat2r = (Math.PI/180)*(gp2.getLatitudeE6()/1E6);
// double Lon1r = (Math.PI/180)*(gp1.getLongitudeE6()/1E6);
// double Lon2r = (Math.PI/180)*(gp2.getLongitudeE6()/1E6);

//地球半径
double R = 6371;

//两点间距离 km,如果想要米的话,结果*1000就可以了
double d = Math.acos(Math.sin(lat1)*Math.sin(lat2)+Math.cos(lat1)*Math.cos(lat2)*Math.cos(lon2-lon1))*R;

return d*1000;
}

举例:(我使用的百度地图的经纬度数据)

[java] view plaincopy
LatLng start = new LatLng(39.95676, 116.401394);
LatLng end = new LatLng(36.63014,114.499574);
getDistance(start, end);
最佳答案
你可以考虑下用JAVASCRIPT来完成该功能,下面这个函数你可以看下<br>&lt;script&gt;<br>var EARTH_RADIUS = 6378137.0; //单位M <br>var PI = Math.PI; <br>function getRad(d){ <br>return d*PI/180.0; <br>} <br> <br>function getGreatCircleDistance(lat1,lng1,lat2,lng2){ <br>var radLat1 = getRad(lat1); <br>var radLat2 = getRad(lat2); <br>var a = radLat1 - radLat2; <br>var b = getRad(lng1) - getRad(lng2); <br>var 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))); <br>s = s*EARTH_RADIUS; <br>s = Math.round(s*10000)/10000.0; <br>return s; <br>} <br>//举例:<br>alert(getGreatCircleDistance(39.95676, 116.401394,36.63014,114.499574)); //返回值单位是米<br>&lt;&#47;script&gt;
全部回答
我觉得是要看ASP的函数在Java中能不能全都实现,比如ASP中的response.write()方法可以用Java的response.println();实现,如果所有函数都可以用简单的Java代码实现,那就是可行的。 要点难度就不清楚了,估计是用Java实现ASP内置对象的复杂程度吧。 仅属个人观点,请高手指点。
public static void decrypt(byte[] p) {     byte[] data = p;     string key = "qmfaktnpgjs";     stringbuilder sbd = new stringbuilder();     int length = data.length; //获取数组长度,无需每次循环都计算     for (int i = 0; i < length; i++)     {         if (data[i] != 0 && data[i] != key[i % 11])         {             sbd.append(data[i] ^ key[i % 11]);         }         else         {             sbd.append(data[i]);         }         sbd.append(" ");     }     system.out.println(sbd.tostring());  }c# 和 java 的有着异曲同工之妙,只需修改一些方法大小写及语句即可- -.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
分期付款买车 银行要审核几天
沧州市博诚装饰有限公司地址在什么地方,想过
读书笔记要写多少字
揠苗助长是寓言故事吗?
9.6米货车宽度是多少?
扁头怎么能矫正。
新鲜中文网 怎么提示说IP被禁止?有没有做什
皇室宝贝地址在哪,我要去那里办事
桃木八卦镜的放置时间及做法
安卓手机无法安装农业银行客户端
福睿斯自动舒适型价格10.9万算高吗
那个腾讯开放平台,我不小心注册了,但是没有
请各位大侠列举张家港所有的中高档写字楼,商
我身高1米50想买个山地自行车哪个品牌好多大
万友通讯地址在哪,我要去那里办事
推荐资讯
求女生钢琴弹唱的日韩歌曲(最好有钢琴谱)
儿子小的时候很活泼,很勇敢,可现在都十三岁
天津瀚金佰洗浴俱乐部,能带酒水吗?
弘足尊我想知道这个在什么地方
explicit equation什么意思
乌江健康土菜馆地址在什么地方,想过去办事
健身房里有单杠和双杠和吊环吗
手掌用过洗洁精类的会真菌感染咋治
宠物蜘蛛火玫瑰能喂它吃九龙虫吗?
贝儿乐奶粉屋地址在什么地方,想过去办事
精品堂地址在哪,我要去那里办事
女人大男人五岁好不好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?