gpt4 book ai didi

ios - iOS 中 ArcGIS Maps 中的当前位置问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:02:23 25 4
gpt4 key购买 nike

我正在开发一个应用程序,其中有一张 map 。我正在使用 ArcGIS SDK 来显示 map 。在这里,我试图在 map 加载时显示我的当前位置。我已将我的纬度和经度传递给 ArcGIS 函数的 xy 参数。这是该函数的代码,

let lat = gpsLocation.location?.coordinate.latitude
let lng = gpsLocation.location?.coordinate.longitude

print(lat)
print(lng)

//zoom to custom view point
self.mapView.setViewpointCenter(AGSPoint(x: lat!, y: lng!, spatialReference: AGSSpatialReference.webMercator()), scale: 4e7, completion: nil)

self.mapView.interactionOptions.isMagnifierEnabled = true

但是当我运行该应用程序时,它在 map 中显示了错误的位置。它指向错误的位置。我也打印了纬度和经度。它们是正确的,但 map 上显示的位置是错误的。如何获取 map 以加载我的当前位置?

这是它在加载时显示的位置,

enter image description here

最佳答案

您正在使用纬度和经度,即度数(可能在 WGS 1984 中),但随后您告诉 ArcGIS 它们在 Web Mercator 中,即米数。这肯定会导致您看到的行为。

要修复它,只需将 webMercator() 替换为 WGS84()

此外,您混淆了纬度和经度。纬度是 y,经度是 x,反之亦然。

总而言之,将您的 setViewpointCenter 调用替换为:

self.mapView.setViewpointCenter(
AGSPoint(x: lon!, y: lat!, spatialReference: AGSSpatialReference.WGS84()),
scale: 4e7,
completion: nil
)

关于ios - iOS 中 ArcGIS Maps 中的当前位置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51193378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com