两地距离已知,能求出地球赤道半径的半径吗

根据经纬度计算地球上两点之间的距离js实现代码
字体:[ ] 类型:转载 时间:
最近用到了根据经纬度计算地球表面两点间距离的公式,然后就用JS实现了一下,根据地球是一个光滑的球面以及并不是一个真正的圆球体,而是椭球延伸出两种方法,感兴趣的你可以参考下
利用JS实现的根据经纬度计算地球上两点之间的距离 最近用到了根据经纬度计算地球表面两点间距离的公式,然后就用JS实现了一下。 计算地球表面两点间的距离大概有两种办法。 第一种是默认地球是一个光滑的球面,然后计算任意两点间的距离,这个距离叫做大圆距离(The Great Circle Distance)。 公式如下: 使用JS来实现为:
代码如下: var EARTH_RADIUS = ; //单位M var PI = Math.PI; function getRad(d){ return d*PI/180.0; } /** * caculate the great circle distance * @param {Object} lat1 * @param {Object} lng1 * @param {Object} lat2 * @param {Object} lng2 */ function getGreatCircleDistance(lat1,lng1,lat2,lng2){ var radLat1 = getRad(lat1); var radLat2 = getRad(lat2); var a = radLat1 - radLat2; var b = getRad(lng1) - getRad(lng2); 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))); s = s*EARTH_RADIUS; s = Math.round(s*1.0;
这个公式在大多数情况下比较正确,只有在处理球面上的相对点的时候,会出现问题,有一个修正的公式,因为没有需要,就没有找出来,可以在wiki上查到。 当然,我们都知道,地球其实并不是一个真正的圆球体,而是椭球,所以有了下面的公式:
代码如下: /** * approx distance between two points on earth ellipsoid * @param {Object} lat1 * @param {Object} lng1 * @param {Object} lat2 * @param {Object} lng2 */ function getFlatternDistance(lat1,lng1,lat2,lng2){ var f = getRad((lat1 + lat2)/2); var g = getRad((lat1 - lat2)/2); var l = getRad((lng1 - lng2)/2); var sg = Math.sin(g); var sl = Math.sin(l); var sf = Math.sin(f); var s,c,w,r,d,h1,h2; var a = EARTH_RADIUS; var fl = 1/298.257; sg = sg* sl = sl* sf = sf* s = sg*(1-sl) + (1-sf)* c = (1-sg)*(1-sl) + sf* w = Math.atan(Math.sqrt(s/c)); r = Math.sqrt(s*c)/w; d = 2*w*a; h1 = (3*r -1)/2/c; h2 = (3*r +1)/2/s; return d*(1 + fl*(h1*sf*(1-sg) - h2*(1-sf)*sg)); }
这个公式计算出的结果要比第一个好一些,当然,最后结果的经度实际上还取决于传入的坐标的精度。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具两地的地理坐标怎样求它们之间的距离_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
两地的地理坐标怎样求它们之间的距离
我有更好的答案
=nπr/180。l是弧长也就是两地的距离,n是圆心角。圆心角是180度减去割线半径与的两个夹角,两个两个夹角相等,这是个等腰三角形。割线就是经纬度与割线构成的直角三角形的斜边。利用正弦定理,默认地球是个球体,半径6371千米
采纳率:96%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包当前位置: >>
已知一点的经纬度和该点到另一点的距离,求另一点的经纬度
以下是将距离换算成经纬度,有误差。
//将相对于起点的距离转换为经纬度,distance代表到点的距离,angle代表方位角度
private string ConvertDistanceToLogLat(float distance, string logLatPtStr, double angle)
string logLat =
string[] temp_Arrary = logLatPtStr.Split(',');
double lng1 = ConvertLongiToDouble(temp_Arrary[0].Replace(&(&,&&));
double lat1 = ConvertLongiToDouble(temp_Arrary[1].Replace(&)&,&&));
double lon = lng1 + (distance * Math.Sin(angle* Math.PI / 180)) / (111 * Math.Cos(lat1 * Math.PI / 180));//将距离转换成经度的计算公式
double lat = lat1 + (distance * Math.Cos(angle* Math.PI / 180)) / 111;//将距离转换成纬度的计算公式
string logStr = ConvertLogLatToString(lon);
string latStr = ConvertLogLatToString(lat);
logLat = &(& + logStr + &,& + latStr + &)&;
return logL
//将double值转换成度分秒字符串
private string ConvertLogLatToString(double lon)
string resut =
string temp = lon.ToString();
string[] du = temp.Split('.');
resut += du[0] + &°&;
double fen = (lon - Convert.ToDouble(du[0])) * 60;
string[] fen_Arrary = fen.ToString().Split('.');
resut += fen_Arrary[0] + &′&;
if (fen_Arrary.Length & 1)
double second = Math.Round((fen - Convert.ToDouble(fen_Arrary[0])) * 60, 0);
resut += second.ToString() + &″&;
知经纬度计算两点精确距离 摘要 本文阐述了用程序计算在已知两点经纬度情况下,...如果两点不在同一个坐标系内,就须 将其中的一点经坐标平移变换到另一点所在...计算地球上两经纬度点 A B 间距离 在 GIS 应用中,计算两点之间距离的公式...已知地球上两点经纬度求... 2页 1下载券 地球上两点的经纬度计算... 5页 ...根据地球上任意两点的经纬度计算两点间的距离地球是一个近乎标准的椭球体,它的赤道半径为
千米,极半径为
千米,平均半径
千米。如果...某点与地球球心的连线和 地球赤道面所成的线面角,其数值在 0 至 90 度...已知地球上两点经纬度求... 2页 1下载券
经纬度计算距离 5页 免费
google...经纬度计算_解决方案_计划/解决方案_实用文档。经纬度距离计算同一经线上,纬度...某一点的经度,就是该点所在的经线平面与本 初子午线平面间的夹角。在赤道上...已知地图上两点的经纬度如何计算距离地球赤道上环绕地球一周走一圈共 40075.04 公里 而一圈分成 360° 而每 1°(度)有 60' 每一度一秒在赤道上的长度计算如...点球面上任一点与球心的连线会交球面于另一点, 亦即位于球体直径两 端的点,...20 ° W---10S 160E A点在球面上的对跖点B经纬度的判定方法: 纬度数相同...上的一点可以用经纬度来表示,这时的经纬 度是唯一...投影方法也不是 唯一的,还是为了一个目的,务求使...的已知点, 如果区域范围不大, 最远点间的距离不...平均: 纬度 1 度 = 大约 111km 纬度 1 分 = 大约 1.85km 纬度 1 秒 = 大约 30.9m 经纬度在不同地区,每度距离差是不同的,如果假定地球是完美的球体(...根据地球上任意两点的经纬度计算两点间的距离 地球是...如果三角函数的输入和输出都采用弧度值,那么公式还...某一点的经度,就是该点所 在的经线平面与本初...
All rights reserved Powered by
copyright &copyright 。文档资料库内容来自网络,如有侵犯请联系客服。比如计算经纬度的实际距离,时差的时间……有什么技巧吗,有什么公式吗?、
比如计算经纬度的实际距离,时差的时间……有什么技巧吗,有什么公式吗?、最好有例题
回答:纬度间的距离计算:这个很好计算,不需要什么公式,你想的太复杂了.因为纬度线都是平行线,所以它们之间的间距是相等的,每一度相差大约111公里,比如从赤道到北纬10度,距离大约为1110公里.时差的计算还真是要认真学.其实光计算时间(钟点)不难,难在过日界线,这样,我们分两步走会容易懂些.先算时差:记住:向东加,向西减(不管它什么日界线),我简称它为“东加西减”.举例:北京时间10点,那么向东每过一个时区就加一小时,一直加.明白吧?加到东十二区是14时对吧,再向东就到了西十二区,还是14时,因为这两个是同一个时区.接着再向东呢,到西十一区了吧,是15点.西十区16点…….当你加到西二区时就是24时了,这就遇到日期问题了,过了24小时就是“第二天”这容易理解吧,那就在日期是加一天就行了.第二步算日期:有两种情况要变更日期.一个就是我们上面说的钟点超过24小时了就得加一天;另一个就是过日界线.记住(过日界线):西加东减.这句与算时差(钟点)的正好相反.比如,在线的西侧是6号,向东过了这条线就是5号.总结:计算时间(钟点)是“东加西减”;计算日期正好相反.能记住吗?祝你学习进步.
与《比如计算经纬度的实际距离,时差的时间……有什么技巧吗,有什么公式吗?、》相关的作业问题
使用5800自带的公式即可计算:根据一已知直线(两点坐标)和直线外一点,求点到直线距离和垂足坐标如图调用方法是:FMLA键,选项2:Built-in,倒数第二个方程式:V-Line&Dist依次输入直线上两点的Y坐标:YA、YB;X坐标:XA、XB;直线外一点的坐标YC、XC重复按EXE键,系统自动计算出垂足的
用经纬度大致计算距离地球赤道上环绕地球一周走一圈共 40075.04公里而一圈分成360°而每1°(度)有60'每一度一秒在赤道上的长度计算如下:40075.04km/360°=111.3955km/60'=1.8553258km=1855.3m而每一分又有60秒每一秒就代表
用两点间坐标公式算,当作直角坐标系使.初中就学过.先看在X轴 上的两点之间的距离,高两点的坐标分别是X1和X2,那么两点间距离是|X1-X2|,同理在Y轴上也是一样,即|Y1-Y2| 那么在平面直角坐标系中,任意两点间距离,可以连接两点,再分别过两点作两坐标轴的平行线,这样就构成了一个直角三角形,通过第一段的叙述可以知
因为地球是不规则球体,只能这样大约推算:R = 半径 (平均半径 = 6,371km)Δlat = lat2− lat1Δlong = long2− long1a = sin2(Δlat/2) + cos(lat1)*cos(lat2)*sin2(Δlong/2)c = 2*atan2(√a,√
如图,5906&km&点击此图之后,&查看大图&下不要&确定&,右键&另存为,保存到本地,就可以看原始大小的图
我先说,打字是很累的= =|||关于经纬度,首先要建立立体思维能力最好买个地球仪,做练习的时候,不会的时候先转转看看多练几次,熟练了,图像自然就有印象了经纬度没有捷径,只能多练习,因为这一部分初中讲得不多,我也没法讲详细(不过初中这一部分分值很少= =||,所以我懒得练)时差的话..有几个公式都得背过1.区时的计算:某
8月9日 11:42 华盛顿是美国东部时间,西安是北京时间,华盛顿比西安推后13个小时,但由于美国现在实行夏时制,这一差距缩短为12个小时,现在西安是9日12时的话,华盛顿是9日0时,但如果不是目前夏时制原因的话,华盛顿应该是8日23时.该回答在8月9日 11:43由回答者修改过
你的意思应该是计算最近距离吧!这样给你说吧!如果是精确的计算,虽然我是地理专业的,我的知识还没有涉及,如果你是高中生为了高考想弄清这个问题,我可以给你讲一下!把地球想象成一个真正的球体,它有一个球心,两个距离就是它们之间在球上的连线成的大圆的劣弧!就是把两地和地心连接,成一个三角形,这个三角形所在的面和地球面相交的那条
知道坐标可以求得两地在纬线上和经线上的距离即H和L,用正切就可以求得了.纬度之差比上精度之差就是楼主要求的夹角的正切值 解例:arctan(|33-34.6|/|107-113.6|),所得值为夹角
不难办.比如A地东经100北纬60,B地东经120,北纬30,先说明一下,地球的经纬度整体上是曲线相交,但在局部,可以用勾股定理来计算距离.我们可以设一点C,让C点在东经120,北纬60,也就是和A地同维度,与B地同经度,那么AB两点间的距离就是直角三角形的斜边.在这里,因为A、C在北纬60,所以,A、C所在维度圈的半
首先把你的400个地理位置相关数据做成EXCEL表格,在arcgis里坐标也可以用米来表示你可以在单位选项里选择米,你可以以基本点作为公式的X.Y直接拖出400个点的具体坐标,再将表格数据加载到地图上生成shp文件或者lyr文件就可以了,很简单的.如果怕麻烦也可以在属性表里直接计算,有问题可以再联系我 在arcgis-
时间的计量:(1)真太阳时,真太阳时即在日晷仪上的时间,记录的是真太阳在天空中的运动.但真太阳时是不均匀的,因为真太阳在一年中的运动是变化的.(2)平太阳时,平太阳时是在钟表上显示的时间,真太阳时的不规律性已经被平滑掉了.平太阳时是基于假想的平太阳运动,尽管他受地球自转影响.平太阳时与真太阳时之差由时差给出.(3)格林
介绍一下圆上2点曲面距离的求法.主要就是算出2点在大圆上的圆心角.然后按照圆的弧长公式计算距离.对于经纬度都不同的两点,可以先找一个经纬度分别与两点中一个相等的点.然后加上圆心总共四点,这样就是一个三角锥.而与圆心相连的三个三角形有两个的角已知,分别是经度和纬度之差.设为a,b.要求另一个圆心角c.sorry接下来不会
时差和纬度无关.每十五度差一小时,一度差四分.自己算一下吧,我找不到地图勒
o()^))o 唉
地球上任意两点距离计算公式为 :D=R* arccos(siny1siny2+cosy1cosy2cos(x1-x2) ) 其中:R为地球半径,均值为6370km.A点经、纬度分别为x1和y1,东经为正,西经为负B点经、纬度分别为x2和y2,北纬为正,南纬为负用上述公式算得两点的距离为30.4km,与googleear
该题有好多种写法.我用C++写了其中的一种,代码如下:#include #includeclass Point { public:Point(double nx=0.0,double ny=0.0):x(nx),y(ny){} Point(Point &np):x(np.x),
一,直线传播二,三,光沿直线传播四,光沿直线传播 注:光沿直线传播是有一条件,在同种均匀介质中
做实验是要用刻度尺来量的,从拉力开始作用的绳子上的点到停止拉力作用在绳子上的点的距离就是S如果计算,就可以直接用S=nh n 为连接动滑轮的绳子的段数扫二维码下载作业帮
3亿+用户的选择
下载作业帮安装包
扫二维码下载作业帮
3亿+用户的选择
已知地球上两地经纬度,怎样算两地距离?我只知道两地距离为以地心为圆心,连接两地的劣弧
作业帮用户
扫二维码下载作业帮
3亿+用户的选择
这要用到球面三角学公式计算.
球面(地球是球面)两点之间的距离,是经过两点和球心的大圆劣弧的长度.
在球面三角学中,大圆弧线长度是用°(度)表示的.例如:A点在东经105°北纬32°,A到北极点N的弧长是90-32=58°.
如果另外一点B是东经60°北纬15°.那么B点到北极点N的大圆弧长是90-15=75°.
这两点和北极点的弧线连线的夹角是:∠BNA=105-60=45°.
在球面三角也有相似于平面三角的正弦定理公式(形式稍有不同):
sin a∶sin A = sin b∶sin B = sin c∶sin C
比例前项(分数的分子)是球面三角形的边的正弦值.比例后项(分数的分母)是球面三角内角的正弦值.∠A的对边是弧长a.
还有边的余弦定理:
cos a = cos b×cos c + sin b×sin c×cos A
把上述数字代入余弦定理,可以算出AB两点之间的大圆弧长°.这里∠A是两点对于北极点的夹角45°;b和c分别是58°和75°.
求出弧长a,就是AB两点之间的大圆弧长,(°为单位).然后根据地球大圆周长是4万公里,即可算出a的长度.
球面三角形的三内角之和>0°,<360°.内角之和和平面三角不同.
为您推荐:
其他类似问题
那劣弧的长度就是距离
经纬度其实是一个地心和方位的夹角~ 画个立体的图你就知道了。其实是已知圆弧的夹角和半径,求算劣弧弧长的问题。记住 不是求直线距离就好了
每隔一个经度相差111米.两地相差的经度数乘于111就行了
扫描下载二维码

我要回帖

更多关于 地球半径是多少 的文章

 

随机推荐