地図のカメラを変更する CameraUpdate
オブジェクトを作成するためのメソッドを含むクラス。地図のカメラを変更するには、このクラスで作成した CameraUpdate
オブジェクトを使用して、animateCamera(CameraUpdate)
、animateCamera(CameraUpdate, GoogleMap.CancelableCallback)
、または moveCamera(CameraUpdate)
を呼び出します。
たとえば、地図をズームインするには、次のコードを使用します。
GoogleMap map = ...;
map.animateCamera(CameraUpdateFactory.zoomIn());
このクラスのメソッドを使用する前に、次のいずれかの方法でこのクラスが初期化されるようにする必要があります。
- アプリケーションに追加した
MapFragment
またはMapView
からGoogleMap
が使用可能になるまで待ちます。GoogleMap
インスタンスを取得するには、getMapAsync()
を呼び出して、onMapReady(GoogleMap map)
コールバックを待ちます。 initialize(Context)
を呼び出します。GooglePlayServicesNotAvailableException
がスローされない限り、このクラスは正しく初期化されます。
デベロッパー ガイド
詳しくは、カメラとビューのデベロッパー ガイドをご覧ください。
パブリック メソッドの概要
static CameraUpdate | |
static CameraUpdate | |
static CameraUpdate |
newLatLngBounds(LatLngBounds 境界、int 幅、int 高さ、int パディング)
指定した緯度/経度の境界が、可能な限り最大のズームレベルで、指定されたディメンションの境界ボックス内の画面中央に配置されるようにカメラを変換する
CameraUpdate を返します。 |
static CameraUpdate |
newLatLngBounds(LatLngBounds 境界、int パディング)
指定した緯度 / 経度の境界が可能な限り最大のズームレベルで画面の中心に配置されるように、カメラを変換する
CameraUpdate を返します。 |
static CameraUpdate |
newLatLngZoom(LatLng latLng, float zoom)
画面の中心を
LatLng オブジェクトで指定された緯度と経度に移動し、指定されたズームレベルに移動する CameraUpdate を返します。 |
static CameraUpdate |
scrollBy(float xPixel、float yPixel)
カメラを地図に沿ってスクロールする
CameraUpdate を返し、ビューの中心を x 方向と y 方向の指定のピクセル数だけシフトします。 |
static CameraUpdate |
zoomBy(浮動小数点数、ポイント フォーカス)
現在のカメラの視点のズームレベルをシフトする
CameraUpdate を返します。 |
static CameraUpdate |
zoomBy(浮動小数点数)
現在のカメラの視点のズームレベルをシフトする
CameraUpdate を返します。 |
static CameraUpdate |
zoomIn()
ビューポイントの高さを地球の表面に近づけて、地図をズームインする
CameraUpdate を返します。 |
static CameraUpdate |
zoomOut()
ビューポイントの高さを地球の表面から遠ざけることで、地図をズームアウトする
CameraUpdate を返します。 |
static CameraUpdate |
zoomTo(浮動小数点ズーム)
カメラの視点を特定のズームレベルに移動する
CameraUpdate を返します。 |
継承されたメソッドの概要
パブリック メソッド
public static CameraUpdate newCameraPosition (CameraPosition cameraPosition)
カメラを指定の CameraPosition
に移動する CameraUpdate
を返します。実際には、CameraPosition
オブジェクトの緯度、経度、ズームレベル、方向、傾斜から変換が作成されます。
パラメータ
cameraPosition |
---|
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate newLatLng (LatLng latLng)
画面の中心を LatLng
オブジェクトで指定された緯度と経度に移動する CameraUpdate
を返します。これにより、カメラが LatLng
オブジェクトの中心に配置されます。
パラメータ
緯度 / 経度 | 目的の緯度と経度を含む LatLng オブジェクト。 |
---|
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int width, int height, int padding)
指定した緯度 / 経度の境界が、可能な限り最大のズームレベルで、指定されたディメンションの境界ボックス内の画面中央に配置されるようにカメラを変換する CameraUpdate
を返します。追加のパディングを指定して、境界ボックスのサイズをさらに制限することもできます。返された CameraUpdate
の方向は 0 で、傾斜は 0 です。
newLatLngBounds(LatLngBounds, int)
とは異なり、このメソッドによって返される CameraUpdate
を使用すると、地図のレイアウト フェーズの前にカメラを変更できます。引数は境界ボックスの希望のサイズを指定するためです。
パラメータ
境界 | 境界ボックスに収まる領域 |
---|---|
width | 境界ボックスの幅(ピクセル単位) |
高さ | 境界ボックスの高さ(ピクセル単位) |
padding | 境界ボックスの追加のサイズ制限(ピクセル単位) |
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int adding)
指定した緯度/経度の境界が可能な限り最大のズームレベルで画面の中心に配置されるように、カメラを変換する CameraUpdate
を返します。地図ビューの端から境界ボックスをインセットするために、パディングを指定できます。返される CameraUpdate
の方向は 0 で、傾斜は 0 です。
地図の更新が完了するまでカメラを変更しないでください(このメソッドで適切な境界ボックスとズームレベルを正しく判断するには、地図のサイズを指定する必要があります)。それ以外の場合は、IllegalStateException
がスローされます。地図を使用できるだけでは不十分です。地図を含むビューもレイアウトが確立されている必要があります(そのディメンションが測定済みである必要があります)。これが発生したかどうかわからない場合は、代わりに newLatLngBounds(LatLngBounds, int, int, int)
を使用して、手動で地図のサイズを指定します。
パラメータ
境界 | 画面に収まる領域 |
---|---|
padding | 境界ボックスの端とビュー端の間にあるスペース(ピクセル単位)この値は、境界ボックスの 4 つの辺すべてに適用されます。 |
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate newLatLngZoom (LatLng latLng, float zoom)
画面の中心を LatLng
オブジェクトで指定された緯度と経度に移動し、指定されたズームレベルに移動する CameraUpdate
を返します。
パラメータ
緯度 / 経度 | 目的の緯度と経度を含む LatLng オブジェクト。 |
---|---|
ズーム | 目的のズームレベル(2.0 ~ 21.0 の範囲)この範囲より小さい値は 2.0 に設定され、それより上の値は 21.0 に設定されます。値を大きくしてズームインします。すべてのエリアに最大のズームレベルのタイルがあるわけではありません。 |
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate scrollBy (float xPixel, float yPixel)
カメラを地図上でスクロールする CameraUpdate
を返し、ビューの中心を x 方向と y 方向の指定のピクセル数だけシフトします。
例:
- xPixel = 5 かつ yPixel = 0 の場合、カメラを動かすことで右にスクロールし、地図が 5 ピクセル左になったように見えます。
- xPixel = 0 かつ yPixel = 5 の場合、カメラを動かすと下にスクロールされ、マップが 5 ピクセル上に移動したように見えます。
スクロールは、カメラの現在の向きを基準にしています。たとえば、カメラの 90 度が方角にある場合、東は「上」で、右にスクロールするとカメラが南に移動します。
パラメータ
xGoogle Pixel | 水平方向にスクロールするピクセル数。正の値を指定すると、現在の向きに対してカメラが右に移動します。負の値を指定すると、カメラは現在の向きに対して左に移動します。 |
---|---|
YPixel | 縦方向にスクロールするピクセル数。正の値を指定すると、現在の向きに対してカメラが下に移動します。負の値を指定すると、現在の向きに対してカメラが上に移動します。 |
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate zoomBy (float amount, Point focus)
現在のカメラの視点のズームレベルをシフトする CameraUpdate
を返します。
フォーカスによって指定された点は固定されたままになります(ズーム プロセスの前後の両方で同じ緯度/経度に対応します)。
このメソッドは、現在のカメラを基準とするズームの点で zoomTo(float)
とは異なります。
たとえば、LatLng
(11.11、22.22)が現在、画面の場所(23、45)にあるとします。このメソッドでズーム量とこの LatLng
を呼び出した後は、この LatLng
の画面上の位置は(23、45)のままです。
パラメータ
amount | ズームレベルを変更します。正の値を指定すると地球の表面に接近することを示します。負の値を指定すると、地表から遠ざかると表示されます。 |
---|---|
ピント | ズームプロセス後も固定された画面上のピクセル位置。カメラの移動前のピクセル位置であった緯度/経度は、カメラの移動後も同じままです。 |
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate zoomBy (float amount)
現在のカメラの視点のズームレベルをシフトする CameraUpdate
を返します。
このメソッドは、現在のカメラを基準とするズームの点で zoomTo(float)
とは異なります。
パラメータ
amount | ズームレベルを変更します。正の値を指定すると地球の表面に接近することを示します。負の値を指定すると、地表から遠ざかると表示されます。 |
---|
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate zoomIn ()
ビューポイントの高さを地球の表面に近づけて、地図をズームインする CameraUpdate
を返します。ズーム倍率は 1.0 です。
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate zoomOut ()
ビューポイントの高さを地球の表面から遠ざけることで、地図をズームアウトする CameraUpdate
を返します。ズーム倍率は -1.0 です。
戻り値
- 変換を含む
CameraUpdate
。
public static CameraUpdate zoomTo (浮動小数点ズーム)
カメラの視点を特定のズームレベルに移動する CameraUpdate
を返します。
パラメータ
ズーム | 目的のズームレベル(2.0 ~ 21.0 の範囲)この範囲より小さい値は 2.0 に設定され、それより上の値は 21.0 に設定されます。値を大きくしてズームインします。すべてのエリアに最大のズームレベルのタイルがあるわけではありません。 |
---|