我正在使用 Mapbox API 制作一个正在运行的应用程序,我正在努力研究如何设置 MGLMapView 的边界以适应用户通过运行创建的所有多段线。 Mapbox 在此处有一个 JavaScript 版本:https://www.mapbox.com/mapbox-gl-js/example/zoomto-linestring/
但我不知道如何使用 swift 实现它。我找不到等效的 fitBounds。
我将每个 CLLocationCoordinate2D 存储到一个名为 pointsArray 的数组中,并将其与 mapView 一起传递给结果 View Controller 。
我有找到数组中两点之间最长距离的方法,并将其设置为边界,但由于算法是 O(n^2),如果我有太多点,计算时间太长。还有其他情况不适合所有要点。
如果您想查看任何特定代码,请告诉我。不确定要显示什么,因为我没有适合边界的内容。
最佳答案
……或者你也可以这样做
mapView?.setVisibleCoordinates(
coordinates,
count: UInt(coordinates.count),
edgePadding: UIEdgeInsetsMake(20, 20, 20, 20),
animated: true
)
关于ios - 如何将所有坐标放入 map 的边界? fitBounds 等效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47003567/