
このページでは、Maps 3D SDK for iOS を使用して基本的な 3D マップを iOS アプリに追加する方法の例について説明します。このページの手順では、 設定ページの手順をすでに完了しており、次のものがあることを前提としています。
- Maps 3D SDK for iOS が有効になっている Google Cloud プロジェクト
- Maps 3D SDK for iOS の API キー
- Maps 3D SDK for iOS パッケージが追加された Xcode バージョン 16.0 以降。
これらの前提条件の詳細については、 設定をご覧ください。
パート 1: 基本的な SwiftUI アプリを作成する
- Xcode で新しいアプリを作成します。
- Product Name を
Hello3DWorldに設定し、組織識別子をcom.exampleに設定します。パッケージ名はcom.example.Hello3DWorldにする必要があります。 - SwiftUI インターフェースを選択します。
- Maps 3D ライブラリをアプリに追加します。設定セクションの手順をご覧ください。
パート 2: 地図を追加する
ContentView.swiftというファイルを開きます。これは、アプリのエントリ ポイントとメイン ナビゲーションです。SwiftUIパッケージとGoogleMaps3Dパッケージをインポートします。body 宣言内のコードをすべて 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 キーを設定する。
API キーは、Map を初期化する前に設定する必要があります。これを行うには、Map を含む
Viewのinit()イベント ハンドラで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
クラスによって制御されます。この手順では、位置、高度、方角、傾斜、ロール、範囲を指定して地図ビューをカスタマイズする方法について説明します。
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: アプリをプレビューして実行する
Xcode プレビューを追加する
プレビューは、シミュレータや外部デバイスを使用せずにアプリを表示して操作できる強力な Xcode 機能です。
プレビューを追加するには、構造体の外側に
#Preview {}コードブロックを追加します。#Preview { CameraDemo() }アプリを実行する
アプリをビルドして実行します。
お疲れさまでした
アプリに 3D マップを追加できました。
次に、カメラパス アニメーション、3D マーカー、ポリゴンなど、Maps 3D SDK for iOS の上級者向け機能について学習します。