我正在构建一个移动地图应用程序,我想将GPS Track数据,航点等存储在数据库中(SQL CE 4.0)。这意味着我只能访问基本数据类型(http://msdn.microsoft.com/en-us/library/ms172424(SQL.110).aspx)
我可能想做的操作
答案 0 :(得分:3)
WGS84是大地测量系统(基准面),而不是坐标系 - 字面上(W)orld(G)eodetic(S)系统19(84)。所以我不是100%肯定你在问什么。
如果您要询问决定使用哪个数据,那么这取决于您打算对数据和您正在处理的位置做什么。例如,如果您只是处理基于英国的功能并希望在OS地图上显示点,那么OSGB36将是最有意义的。如果您需要全球参考系统并希望使用诸如谷歌地图之类的东西,那么WGS84将是最好的。值得注意的是,WGS84是存储在娱乐和商用GPS装置中的坐标的默认标准数据。
然而,所有这些基准都基于纬度和经度的地理坐标系定义点 - 因此它们都使用相同的“坐标系”。使用Helmert转换矩阵在基准之间进行转换也是可能的,因此即使某些替代系统在特定情况下更适用,您也不会被卡住。
除此之外,如果您使用的是SQL CE,我建议使用一个简单的表来存储航点。在很多情况下,类似下面的东西应该可以正常工作。您需要确定坐标所需的精度水平。 e.g。
CREATE TABLE 'waypoints' (
'id' INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
'name' VARCHAR( 60 ) NOT NULL ,
'type' VARCHAR( 30 ) NOT NULL ,
'latitude' FLOAT( 10, 6 ) NOT NULL ,
'longitude' FLOAT( 10, 6 ) NOT NULL
)'
显然,您可能不需要“名称”和“类型”等字段,它们只是用于显示人们如何以人类可读的方式区分航路点。