カメラの設定を構成する

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

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

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

カメラの位置

地図ビューは、3D 空間内の特定の点を撮影するカメラとしてモデル化されています。カメラの位置と向き(したがって地図のレンダリング)は、center(カメラが向いている緯度、経度、高度の位置)、heading、tilt、range、roll の各プロパティで指定されます。

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

center は、カメラが撮影する 3D 空間内の特定の点を定義します。これは、緯度、経度、高度の値を使用して指定します。これにより、カメラの焦点を 3 次元で正確に配置できます。

緯度は -90 ~ 90 度の範囲で指定できます。この範囲外の値は、この範囲内の最も近い値に設定されます。たとえば、緯度 100 を指定した場合は、値が 90 に設定されます。経度は -180~180 度の範囲になります。高度は海抜メートル単位で指定します。

見出し

カメラの方角は、カメラが向く方向を真北からの時計回りの度数で指定します。北は 0 度、東は 90 度、南は 180 度、西は 270 度に対応しています。これにより、中心点の垂直軸を中心としたカメラの向きが決まります。

傾斜

tilt は、垂直軸に対するカメラの角度を度数で指定します。傾斜が 0 度の場合、カメラは地球の真下(天底)を向いています。チルトが 90 度の場合、カメラは方位で指定された方向に水平方向に向いています。

範囲

範囲は、カメラの位置とカメラが向いている中心点との距離をメートル単位で定義します。範囲は 0 メートル(非常に近接)から 6, 300 万メートルまで変動し、非常に近接から地球全体を捉えたビューまで撮影できます。これにより、地図の「ズームイン」と「ズームアウト」を効果的に制御できます。

回転

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

カメラの制御

次のコードサンプルは、カメラをプログラムで制御する方法を示しています。

Swift

public static var sanFrancisco: Camera = .init(
  latitude: 37.7845812,
  longitude: -122.3660241,
  altitude: 585,
  heading: 288.0,
  tilt: 75.0,
  roll: 0.0,
  range: 100)