求公式,500分(300分)

  • 主题发起人 主题发起人 Shuzi
  • 开始时间 开始时间
S

Shuzi

Unregistered / Unconfirmed
GUEST, unregistred user!
1.投影坐标计算公式,不管什么投影类型
2.距离计算公式(已知两点经纬度)
3.方位角计算公式(已知两点经纬度)
4.其它GIS相关公式
 
找一本《地图》书,上面基本上有你要的前3项。
 
如果是电子版的可以发给我吗?
 
到天文爱好者的网上看看
 
设二点分别为A和B,二点之间距离为d,A的经度、纬度分别为λA和ΦA,B的经度、纬度
分别为λB和ΦB,则由球面的三角关系式可得
d=111.12cos-1[sinΦAsinΦB十 cosΦAcosΦBcos(λB—λA)]
A由地理北偏东方位角为
IA=cos-1{[sinΦB—sinΦA cos(d/111.12)]/sin(d/111.12)cosΦA }
B由地理北偏东方位角为
IB=360°—cos-1{[sinΦA—sinΦB cos(d/111.12)]/sin(d/111.12)cosΦB }
假设λB>λA,d单位为公里,角度单位为度。



 
投影坐标计算公式参见:
http://www.ekany.com/wdg98/cg/contents/chapter3/les323.htm
 
这个我没有,因为这个不是许多人需要的,呵呵,你可以到图书馆借了看看
 
zytka:
能解释一下你的公式吗?
111.12cos-1...是什么意思?
 
YYSUN老师的<计算机制图>上有各种投影变换的公式
 
cos后是-1次方
ΦA ΦB 中A B 为下标
 
to zytka:
谢谢您!根据您的公式,我用Delphi写了下面的代码,好象结果不太对,请您看一下是
什么问题.
function GetDisOfGeoXY(Lo1,Lb1,Lo2,Lb2:Double):Double;
{ Lo1 第一点的经度
Lb1 第一点的纬度
Lo2 第二点的经度
Lb2 第二点的纬度
}
begin

Result:=111.12*Cos(Power(Sin(Lb1)*Sin(Lb2)+Cos(Lb1)*Cos(Lb2)*Cos(Lo2-Lo1),-1));
end;

 
你在不在上海?如果在的话,你可以找我,我借本书给你好了!
 
distance = ( Earth Radius ) * arccos ( cos (90 - lat2) * cos (90 - lat1) + sin (90 - lat2) * sin (90 - lat1) * cos (lon2 - lon1) )

A = arcsin ( sin (90 - lat2) * sin (lon2 - lon1) / sin (b) )
 
多人接受答案了。
 
后退
顶部