注意地理坐标系下的距离和面积计算

我们都知道空间坐标分地理和投影两种,后者可用于计算长度、面积。但是,在一些软件中,我们的数据源是地理坐标也可进行长度和面积的计算。下面看一下两点在不同软件在坐标系统的长度。

(1)ArcGIS中WGS1984地理坐标:

(2)google earth中WGS1984地理坐标:

(3)ArcGIS中WGS1984 Mercator坐标:

(4)ArcGIS中WGS1984 Web Mercator坐标:

从上面图比较可以看出:地理坐标下,也可以计算距离和长度(只是与投影),那它是怎么来算的呢?在ArcObject中,有IUnitConverter这一接口,它可以将不同单位度量值进行转换,操作如 下:

IUnitConverter convert = new UnitConverterClass();

double degree = convert.ConvertUnits(100, esriUnits.esriKilometers, esriUnits.esriDecimalDegrees);

其实这样的转换是不精确的:http://zhihu.esrichina.com.cn/question/14117

之所以在地理坐标下能进行转换,它是一个约算值,计算时取的地球半径为 6378137,这样并不精确,精确计算必须先进行合适地投影!

原文地址:https://www.cnblogs.com/liweis/p/10809060.html