ect和面状地物类AObject。MyPoint是由经纬度及其它属性组成的类,三种地物均由一个或多个MyPoint对象组成。数据库方法只须将抽象地物类对象的引用作为参数,便可对不同地物进行统一操作,这样减少了数据库接口方法中参数的个数,其它模块调用数据库方法就变得非常简单,在一定程度上屏蔽了数据库的复杂性,也便于日后维护。抽象地物类还可以用于其它模块。
图2 数据操作结构图
本数据库的优点在于改进了数据存储方式,数据库不直接操作测量点,只对完整的地物进行操作,避免了对数据的频繁读写,也在一定程度上保证了数据的完整性。
3.2 长度/面积测量实现原理
1)利用地图投影,球面坐标向平面坐标转化
通过测量,获得的地物地理数据,是球面坐标下的经纬度值,如果要计算其面积或长度,必须在平面坐标下进行。因此,首先要对测量点的坐标进行投影转换。
地图投影采用高斯-克吕格投影,为了减小误差,将投影的中央经线放置在测量区块的中间位置,即计算出该区块所有测量点经度的平均值,作为投影的纵坐标,赤道投影为横坐标构建高斯平面。然后重新遍历一次该地物的所有测量点,利用高斯投影公式将它们的经纬度转化为平面上的坐标[4]。高斯-克吕格正射投影优化公式如下[5]:
X=6367452.1328B-(P0-(0.5+(P4+P6L2)L2)L2N)sinB (1)
Y=(1+(P3+P5L2)L2)LN2 (2)
式中:
N=(6399596.652-(21565.045-(108.996-0.603cos2B)cos2B)cos2B)co