【问题标题】:Convert GeoPoint to Location将 GeoPoint 转换为位置
【发布时间】:2011-03-29 04:58:03
【问题描述】:

我知道这是一个非常愚蠢的问题——但是在 Android 平台上将 GeoPoint 转换为 Location 的最佳方法是什么。

【问题讨论】:

    标签: android google-maps geolocation


    【解决方案1】:
    double latitude = geoPoint.getLatitudeE6() / 1E6;
    double longitude = geoPoint.getLongitudeE6() / 1E6;
    
    location.setLatitude(latitude);
    location.setLongitude(longitude);
    

    【讨论】:

    • 真糟糕,没有更简单的方法了。
    • 我当然希望那是讽刺。
    • 这实际上是否正确,因为它不会设置高度? — @hwrdprkns:除以1E6 将节省您更多的字符。 — @stealthcopter:不,不是。 Location 显然缺少两个浮点数的构造函数(Location 甚至没有默认构造函数 - 你需要填写一个无用的提供者)。实际上,我会将Location 设为不可变的,例如DateString
    • +1 这为我节省了一些时间来弄清楚如何计算坐标。谢谢!
    • 小心,代码中有一个严重的错误。至少我是这么认为的,如果我错了,请纠正我。它必须是float latitude = geoPoint.getLatitudeE6()/1000000F(F真的很重要,否则他会因为INT的div而降低值,这离原点真的很远)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多