カメラの設定を構成する

プラットフォームを選択: Android iOS JavaScript

ユーザーは、地図上のジェスチャーを使用して、カメラのズーム、傾斜、位置、回転を制御できます。カメラをプログラムで構成することもできます。

3D カメラモデルを示す図

カメラの位置

地図ビューは、空間内の特定のポイントを見ているカメラとしてモデル化されています。カメラの位置と向きは、緯度/経度/高度の座標(カメラが向いている「中心」として定義)、見出し、傾斜、範囲、ロールで定義されます。

中心(緯度、経度、高度)

center は、カメラが観測している 3D 空間内の特定の点を定義します。これは、緯度、経度、高度の値を組み合わせた LatLngAltitude クラスを使用して指定します。これにより、カメラの焦点の 3 次元での正確な位置決めが可能になります。

緯度は、-90 ~ 90 度の範囲で指定できます。経度は -180~180 度の範囲になります。高度は海抜メートルで指定します。

見出し

heading は、地図のコンパス方位を真北からの時計回りの角度で指定します。北は 0 度、東は 90 度、南は 180 度、西は 270 度に対応します。

傾斜

傾斜は、垂直軸に対するカメラの角度を度数で指定します。傾斜が 0 度の場合は、カメラが地球の真下(天底)を向いていることを意味します。傾斜が 90 度の場合は、カメラは heading で指定された方向に水平に傾けられます。

範囲

範囲は、カメラの位置と地図の中心との間の距離をメートル単位で定義します。範囲は 0 メートル(非常に近い距離)から 6, 300 万メートルまで変化し、非常に近い距離から地球全体を見渡す視点まで、さまざまな視点での表示が可能です。これにより、地図の拡大 / 縮小の度合いを効果的に制御できます。

ロール

ロールは、水平線に対するカメラの角度を度単位で設定します。このパラメータを使用すると、フライト シミュレーション中のバンキングや、カメラを視軸を中心に回転させるフル バレルロールなどの効果を作成できます。

カメラの制御

次のコードサンプルは、setCamera メソッドを呼び出してカメラをプログラムで制御する方法を示しています。このコードサンプルを使用するには、設定アプリに 3D 地図を追加するの手順に沿って、基本的な 3D 地図で Android Studio プロジェクトを設定します。次に、MainActivity.kt ファイルに次のコードを追加します。


// Add imports
import com.google.android.gms.maps3d.model.latLngAltitude

...

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
    camera {
        center = latLngAltitude {
            latitude = 38.743502
            longitude = -109.499374
            altitude = 1467.0
        }
        heading = 350.0
        tilt = 58.1
        range = 138.2
        roll = 0.0
    }
)