在應用程式中加入 3D 地圖

選取平台: Android iOS JavaScript

西雅圖、舊金山和巴黎的基本地圖

本頁面將透過範例說明如何使用 Maps 3D SDK for iOS,將基本 3D 地圖加入 iOS 應用程式。本頁的操作說明假設您已完成「設定」頁面中的步驟,並具備下列項目:

  • 已啟用 Maps 3D SDK for iOS 的 Google Cloud 專案
  • API 金鑰 Maps 3D SDK for iOS
  • Xcode 16.0 以上版本,並新增 Maps 3D SDK for iOS 套件。

如要進一步瞭解這些必要條件,請參閱「設定」一節。

參加更進階的程式碼研究室

在 GitHub 上查看更多程式碼範例

第 1 部分:建立基本 SwiftUI 應用程式

  1. 在 Xcode 中建立新應用程式。
  2. 將「產品名稱」設為 Hello3DWorld,並將機構 ID 設為 com.example。套件名稱應為 com.example.Hello3DWorld
  3. 選擇 SwiftUI 介面。
  4. 將 Maps 3D 程式庫新增至應用程式。請參閱設定部分的操作說明

第 2 部分:新增地圖

地球的簡易 3D 地圖

  1. 開啟名為 ContentView.swift 的檔案。這是應用程式的進入點和主要導覽選單。

  2. 匯入 SwiftUIGoogleMaps3D 套件。

  3. 將主體宣告內的所有程式碼替換為 Map(mode: .hybrid)。

    您需要提供的 Map 初始設定,至少包含 MapMode

    • .hybrid,或
    • .satellite

    您的 ContentView.swift 檔案看起來會像這樣:

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      var body: some View {
        Map(mode: .hybrid)
      }
    }
    
    #Preview {
      ContentView()
    }
    

第 3 部分:設定 API 金鑰。

  1. 必須在地圖初始化前設定 API 金鑰。方法是在包含地圖的 Viewinit() 事件處理常式中設定 Map.apiKey

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      init () {
        Map.apiKey = "YOUR_API_KEY"
      }
    
      var body: some View {
        Map(mode: .hybrid)
      }
    }
    

第 4 部分:使用攝影機控制地圖檢視畫面

3D 地圖檢視畫面由 Camera 類別控制。在這個步驟中,您將瞭解如何指定位置、高度、方位、傾斜、翻轉和範圍,以自訂地圖檢視畫面。

  1. 變更 Map() 函式呼叫,納入 initialCamera 屬性。初始化 initialCamera,以顯示曼哈頓市中心的景觀。

    import SwiftUI
    import GoogleMaps3D
    
    struct ContentView: View {
      init () {
        Map.apiKey = "YOUR_API_KEY"
      }
      var body: some View {
        Map(initialCamera: .init(
          latitude: 40.748339,
          longitude: -73.985912,
          altitude: 211.1,
          heading: 52,
          tilt: 68,
          range: 1039
        ), mode: .hybrid)
      }
    }
    

上述程式碼會為這些參數設定值:

  • heading:從正北方順時針測量至相機指向的角度 (以度為單位)。
  • tilt:傾斜角度 (以度為單位),0 代表正上方,90 代表水平方向。
  • roll:相機垂直平面上的滾動角度,以度為單位。
  • range:相機與經緯度位置的距離 (以公尺為單位)
  • altitude:相機高於海平面的高度。

如果您未提供任何額外參數,系統會使用預設值。

如要讓相機檢視畫面顯示更多 3D 資料,請設定初始參數,以便顯示更靠近且傾斜的檢視畫面。

第 6 部分:預覽及執行應用程式

紐約市的 3D 基本地圖

  1. 新增 Xcode 預覽

    預覽是強大的 XCode 功能,可讓您查看及與應用程式互動,無須使用模擬器或外部裝置。

    如要新增預覽畫面,請在結構體外部新增 #Preview {} 程式碼區塊。

    #Preview {
      CameraDemo()
    }
    
  2. 執行應用程式

建構並執行應用程式。

恭喜!

您已成功在應用程式中新增 3D 地圖!

接下來,您可以探索 Maps 3D SDK for iOS 的進階功能,例如相機路徑動畫3D 標記多邊形