苹果MapKit 3D天桥

是否有任何公共iOS 8 API可用于实现3D天桥或至less3D视图,如下面的Apple Maps App屏幕截图所示?

在这里输入图像说明

更新

经过以下build议我已经完成了以下代码:

import UIKit import MapKit class ViewController: UIViewController { @IBOutlet weak var mapView: MKMapView! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. mapView.showsBuildings = true let eiffelTowerCoordinates = CLLocationCoordinate2DMake(48.85815,2.29452) mapView.region = MKCoordinateRegionMakeWithDistance(eiffelTowerCoordinates, 1000,100) mapView.mapType = MKMapType.Standard // 3D Camera let mapCamera = MKMapCamera() mapCamera.centerCoordinate = eiffelTowerCoordinates mapCamera.pitch = 45 mapCamera.altitude = 500 mapCamera.heading = 45 // Set MKmapView camera property self.mapView.camera = mapCamera } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 

现在我的应用程序看起来类似于苹果地图应用程序,但不幸的是不相同

在这里输入图像说明

有谁知道如何将所有的纹理添加到build筑物?

更新2

Google地图iOS SDK已被选中。 绝对相同的故事。 除了kGMSTypeNormal之外,没有任何模式的3Dbuild筑物这意味着没有可用的build筑物。

以下代码:

 import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let camera = GMSCameraPosition.cameraWithLatitude(48.85815, longitude: 2.29452, zoom: 50, bearing:30, viewingAngle:40) let mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera) mapView.mapType = kGMSTypeNormal mapView.buildingsEnabled = true self.view = mapView } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 

渲染以下屏幕截图:

在这里输入图像说明

现在可以使用新的iOS 9 MKMapTypeSatelliteFlyovertypes。

测试应用截图

在MapKit参考中find这个:

参考链接

showsBuildings布尔值,指示地图是否显示拉伸的build筑物信息。

声明SWIFT var showsBuildings:Bool OBJECTIVE-C @property(nonatomic)BOOL showsBuildings Discussion如果此属性设置为YES,并且摄像机的俯仰angular大于零,则地图将build筑物拉伸,以便它们在地图平面上方延伸,从而创build3D效果。 必须将mapType属性设置为MKMapTypeStandard才能显示要展开的build筑物。 该属性的默认值是YES。

导入语句导入MapKit

可用性iOS 7.0及更高版本中提供。

MKMapCameraClass:

俯仰摄像机的视angular,以度为单位。

声明SWIFT var pitch:CGFloat OBJECTIVE-C @property(非primefaces)CGFloat pitch讨论值为0会使摄像机指向地图。 大于0的angular度导致摄像机以指定的度数向地平线倾斜。 如果地图types是MKMapTypeSatellite或MKMapTypeHybrid,音调值被钳位为0。

此属性中的值可能会被钳制到最大值以保持地图的可读性。 虽然没有固定的最大值,因为实际的最大值取决于相机当前的高度。

导入语句导入MapKit

可用性iOS 7.0及更高版本中提供。

为了达到你想要的,你必须玩相机。 如有需要,您必须更新音高,标题和高度。

看看这里,你会发现一切: MKMapCamera类参考

更新:不幸的是,你不能映射卫星或混合的地图。

如果地图types是MKMapTypeSatellite或MKMapTypeHybrid,音调值被钳位为0。