我有一个像 [[39.1216, 40.5127],[40.5081, 40.5127],[40.5081, 41.1076],[39.1216, 41.1076]]
这样的数组这个和这个位置给了我一个城市的角落坐标。 [topleft,topRight,botRight,botLeft]
当用户选择一个城市时,我想将 map View 缩放到 mapview
的角落匹配这个位置。
我搜索但找不到任何解决方案。我怎样才能做到这一点?
我可以得到这个坐标的中心位置,但是如何计算 latitudinalMeters
和 longitudinalMeters
根据角落位置?
let region = MKCoordinateRegion.init(center: location, latitudinalMeters: "calculations", longitudinalMeters: "calculations")
最佳答案
您可以获得纬度和经度之间的差异(增量),然后使用 MKCoordinateSpan
和 MKCoordinateRegion
设置 map 的初始可见区域。
let latDelta = topLeft.latitude - bottomRight.latitude
let lonDelta = topLeft.longitude - bottomRight.longitude
let span = MKCoordinateSpan(latitudeDelta: fabs(latDelta), longitudeDelta: fabs(lonDelta))
let region = MKCoordinateRegion(center: lake.midCoordinate, span: span)
mapView.region = region
关于ios - 如何通过提供角落位置来缩放 Mapview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62676563/