我有一个数组,如[[39.1216,40.5127],[40.5081,40.5127],[40.5081,41.1076],[39.1216,41.1076]]
this and this locations给我一个城市的角坐标。 [topleft,topRight,botRight,botleft]
当用户选择一个城市时,我要缩放mapview直到mapview
的角点与该位置匹配。 我找遍了,但找不到任何解决办法。 我怎样才能做到这一点呢?
我可以得到这个坐标的中心位置,但是如何根据拐角位置来计算纬度表
和纵向表
呢?
let region = MKCoordinateRegion.init(center: location, latitudinalMeters: "calculations", longitudinalMeters: "calculations")
您可以获得纬度和经度之间的差值(delta),然后使用MKCoordinateSpan
和MKCoordinateRegion
设置地图的初始可见区域。
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