カメラ

本SDKは、カメラを変更することで地図の操作を行います。
カメラには、以下のプロパティがあります。

target

カメラの位置です。
地図中心の緯度経度を表します。

bearing

カメラの向きです。
北から時計回りに0~360(0)の値で表されます。
指定した値が地図の上部となります。

zoom

カメラのズームレベルです。
ズームレベルにより、地図の縮尺が決定します。
デフォルトでは2〜21の値を取り、値が大きくなると地図が拡大されていきます。
以下はそれぞれズームレベル6, 12, 17のサンプルです。

   

tilt

カメラの傾き(鳥瞰)です。
0~30の値を取り、値が大きくなると地図が傾いていきます。
以下は傾き0,15, 30のサンプルです。
    

カメラの移動
ソースコードにてカメラを動かすには、CameraUpdateFactoryクラスを使用してCameraUpdateオブジェクトを作成し、ZDCMap.moveCameraメソッドに渡すことで行います。

・ズームレベルの変更
CameraUpdateFactory.zoomByメソッドは、指定した値だけ現在のズームレベルを増減します。
例えば、現在のズームレベルが9の時、zoomByメソッドで4を指定すると、ズームレベルは13になります。

CameraUpdateFactory.zoomToメソッドは、指定した値をズームレベルに設定します。
例えば、現在のズームレベルが9の時、zoomToメソッドで4を指定すると、ズームレベルは4になります。

CameraUpdateFactory.zoomIn, zoomOutメソッドは、それぞれ現在のズームレベルを+1または-1します。

・スクロール
CameraUpdataFactory.scrollByメソッドは、指定した値(画面ピクセル)だけ、カメラ位置を移動します。
例えば、scrollBy(150, -200)とすると、端末の右方向に150、上方向に200ピクセル移動します。

・カメラの移動
カメラの移動には2種類の方法があります。
緯度経度の指定と、バウンディングボックスの指定です。

・緯度経度指定
CameraUpdateFactory.newLatLngメソッドで、緯度経度を指定してカメラ位置を移動します。
CameraUpdateFactory.newLatLngZoomメソッドで、緯度経度の他にズームレベルを指定してカメラ位置を移動することもできます。

・バウンディングボックス指定
CameraUpdateFactory.newLatLngBoundsメソッドで、画面内に収めたい地図の範囲を指定してカメラ位置を移動します。
このメソッドには、パディングの指定か、幅高の指定があります。
パディングを指定すると、指定した地図の範囲+パディングが画面に収まるように、カメラ位置が調節されて移動します。
幅高を指定すると、指定した地図の範囲が幅高以上となるように、カメラ位置が調節されて移動します。

他にも、CameraUpdateFactory.newCameraPositionを使用すると、カメラのプロパティを自由に設定してカメラ位置を移動することができます。