blob: 1fefa4940e4a5c9a9495fcac412923c8f05efbce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import Mapbox
@objc(CameraAnimationExample_Swift)
class CameraAnimationExample_Swift: UIViewController, MGLMapViewDelegate {
override func viewDidLoad() {
super.viewDidLoad()
let mapView = MGLMapView(frame: view.bounds)
mapView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
mapView.delegate = self
mapView.styleURL = MGLStyle.outdoorsStyleURL(withVersion: 9);
// Mauna Kea, Hawaii
let center = CLLocationCoordinate2D(latitude: 19.820689, longitude: -155.468038)
// Optionally set a starting point.
mapView.setCenter(center, zoomLevel: 7, direction: 0, animated: false)
view.addSubview(mapView)
}
func mapViewDidFinishLoadingMap(_ mapView: MGLMapView) {
// Wait for the map to load before initiating the first camera movement.
// Create a camera that rotates around the same center point, rotating 180°.
// `fromDistance:` is meters above mean sea level that an eye would have to be in order to see what the map view is showing.
let camera = MGLMapCamera(lookingAtCenter: mapView.centerCoordinate, fromDistance: 4500, pitch: 15, heading: 180)
// Animate the camera movement over 5 seconds.
mapView.setCamera(camera, withDuration: 5, animationTimingFunction: CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut))
}
}
|