- вы можете добиться поворота маркера с помощью карт Google и свойства поворота маркера.
хотя вам нужен код obj-c, мой быстрый код поможет вам понять, что я имел в виду.
замените MARKER_IMAGE_NAME своим изображением
1) настроить карту Google
let camera = GMSCameraPosition.camera(withLatitude: firstPoint.latitude,
longitude: firstPoint.longitude, zoom: 14)
let navHeight = (self.navigationController?.navigationBar.frame.size.height)! + 20
let frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height - navHeight)
let GMapView = GMSMapView.map(withFrame: frame, camera: camera)
self.view.addSubview(GMapView)
2) подготовить маркер
let bearing:Double = 90
var marker = GMSMarker()
marker.icon = UIImage(named: MARKER_IMAGE_NAME)
marker.appearAnimation = GMSMarkerAnimation.pop
3) применить вращение
marker.rotation = bearing
4) добавить маркер на карту Google
marker.map = GMapView