【问题标题】:Transforming GPS coordinates onto an (X, Y) plane in Android在Android中将GPS坐标转换到(X,Y)平面上
【发布时间】:2013-07-15 01:00:31
【问题描述】:

我正在尝试将 GPS 点(纬度、经度)映射到 2D(X、Y)平面上。该平面是使用自定义视图在 Android 设备上绘制的,我希望每个轴都缩放到 200 米的长度。

我正在尝试将 GPS 位置设置为这架飞机的原点,然后将距该 GPS 点最远 100 米的点映射到地图上。

我已经进行了一些先前的研究,但我发现的线程地址从 Lat/Long 转换为 (X, Y, Z) 球坐标,其中地球是原点(请参阅this thread)。

Another thread 更符合我正在寻找的内容,其中屏幕上的每个像素都对应一个 GPS 位置 - 但是,我试图将 GPS 点映射到更小的比例(200m X 200m)..不像城市那样大的地理地图。

最直接的方法是什么?

编辑: 找到了very similar question,但它没有使用坐标平面,而是使用平面图的图像将 GPS 点映射到。

【问题讨论】:

  • 在很短的距离上,您可以从分数度转换为线性距离,而不会出现重大错误。几何学将表明,纬度在任何地方都是地球圆周的相同部分,但经度在距离上因纬度而异。因此,找出本地度数到距离的转换并应用它们。
  • 好的.. 这很有意义。如何计算本地度数到距离的转换?数学对我来说是新的。1 纬度 = 1/180 北极和南极之间的距离也是如此(地球周长的一半?)

标签: android gps android-view


【解决方案1】:

如果你的面积很小,似乎你可以忽略z轴。真的对于地球上的小面积,如果(x1,y1,z1)和(x2,y2,z2)是两个点它,您可以使用 z1 作为 z2 的良好近似值,反之亦然。因此您可以将它们映射到 2D 笛卡尔地图上的 (x1,y1) 和 (x2,y2) 而不会出现很大错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 2015-04-24
    • 1970-01-01
    • 2020-07-04
    相关资源
    最近更新 更多