CameraUpdateFactory

public final class CameraUpdateFactory memperluas Object

Class yang berisi metode untuk membuat objek CameraUpdate yang mengubah kamera peta. Untuk mengubah kamera peta, panggil animateCamera(CameraUpdate), animateCamera(CameraUpdate, GoogleMap.CancelableCallback), atau moveCamera(CameraUpdate) menggunakan objek CameraUpdate yang dibuat dengan class ini.

Misalnya, untuk memperbesar peta, Anda dapat menggunakan kode berikut:

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

Sebelum menggunakan metode apa pun dari class ini, Anda harus melakukan salah satu tindakan berikut untuk memastikan bahwa class ini telah diinisialisasi:

Panduan Developer

Untuk informasi selengkapnya, baca panduan developer Kamera dan Tampilan.

Ringkasan Metode Publik

CameraUpdate statis
newCameraPosition(CameraPosition cameraPosition)
Menampilkan CameraUpdate yang memindahkan kamera ke CameraPosition yang ditentukan.
CameraUpdate statis
newLatLng(LatLng latLng)
Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng.
CameraUpdate statis
newLatLngBounds(batas LatLngBounds, lebar int, tinggi int, padding int)
Menampilkan CameraUpdate yang mengubah kamera sedemikian rupa sehingga batas garis lintang/garis bujur yang ditentukan berada di tengah layar dalam kotak pembatas dimensi yang ditentukan pada tingkat zoom tertinggi.
CameraUpdate statis
newLatLngBounds(batas LatLngBounds, padding int)
Menampilkan CameraUpdate yang mengubah kamera sedemikian rupa sehingga batas garis lintang/bujur yang ditentukan berada di tengah layar dengan tingkat zoom tertinggi.
CameraUpdate statis
newLatLngZoom(LatLng latLng, zoom float)
Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng, dan berpindah ke tingkat zoom yang diberikan.
CameraUpdate statis
scrollBy(xPixel float, yPixel float)
Menampilkan CameraUpdate yang men-scroll kamera di atas peta, menggeser bagian tengah tampilan menurut jumlah piksel yang ditentukan dalam arah x dan y.
CameraUpdate statis
zoomBy(jumlah nilai mengambang, Fokus titik)
Menampilkan CameraUpdate yang menggeser tingkat zoom sudut pandang kamera saat ini.
CameraUpdate statis
zoomBy(jumlah floating)
Menampilkan CameraUpdate yang menggeser tingkat zoom sudut pandang kamera saat ini.
CameraUpdate statis
zoomIn()
Menampilkan CameraUpdate yang memperbesar peta dengan memindahkan tinggi titik pandang lebih dekat ke permukaan Bumi.
CameraUpdate statis
zoomOut()
Menampilkan CameraUpdate yang memperkecil peta dengan memindahkan tinggi titik pandang lebih jauh dari permukaan Bumi.
CameraUpdate statis
zoomTo(zoom mengambang)
Menampilkan CameraUpdate yang memindahkan sudut pandang kamera ke tingkat zoom tertentu.

Ringkasan Metode Turunan

Metode Publik

public static CameraUpdate newCameraPosition (CameraPosition cameraPosition)

Menampilkan CameraUpdate yang memindahkan kamera ke CameraPosition yang ditentukan. Akibatnya, tindakan ini akan menghasilkan transformasi dari lintang, bujur, tingkat zoom, arah, dan kemiringan objek CameraPosition.

Parameter
cameraPosition
Hasil

publik statis CameraUpdate newLatLng (LatLng latLng)

Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng. Tindakan ini akan memusatkan kamera pada objek LatLng.

Parameter
latLng objek LatLng yang berisi lintang dan bujur yang diinginkan.
Hasil

publik statis CameraUpdate newLatLngBounds (LatLngBounds batas, lebar int, tinggi int, padding int)

Menampilkan CameraUpdate yang mengubah kamera sedemikian rupa sehingga batas garis lintang/garis bujur yang ditentukan berada di tengah layar dalam kotak pembatas dimensi yang ditentukan pada tingkat zoom tertinggi. Anda dapat menentukan padding tambahan, untuk lebih membatasi ukuran kotak pembatas. CameraUpdate yang ditampilkan memiliki bearing 0 dan kemiringan 0.

Tidak seperti newLatLngBounds(LatLngBounds, int), Anda dapat menggunakan CameraUpdate yang ditampilkan oleh metode ini untuk mengubah kamera sebelum fase tata letak peta, karena argumen menentukan ukuran kotak pembatas yang diinginkan.

Parameter
batas wilayah agar sesuai dengan kotak pembatas
lebar lebar kotak pembatas dalam piksel (px)
tinggi tinggi kotak pembatas dalam piksel (px)
padding batasan ukuran tambahan (dalam px) pada kotak pembatas
Hasil

publik statis CameraUpdate newLatLngBounds (LatLngBounds batas, padding int)

Menampilkan CameraUpdate yang mengubah kamera sedemikian rupa sehingga batas garis lintang/bujur yang ditentukan berada di tengah layar dengan tingkat zoom tertinggi. Anda dapat menentukan padding untuk menyisipkan kotak pembatas dari tepi tampilan peta. CameraUpdate yang ditampilkan memiliki bearing 0 dan kemiringan 0.

Jangan ubah kamera dengan pembaruan kamera ini hingga peta diberi tata letak (agar metode ini menentukan kotak pembatas dan tingkat zoom yang sesuai dengan benar, peta harus memiliki ukuran). Jika tidak, IllegalStateException akan ditampilkan. Ketersediaan peta TIDAK cukup; tampilan yang berisi peta juga harus sudah diberi tata letak sedemikian rupa agar dimensinya telah ditentukan. Jika Anda tidak dapat memastikan bahwa hal ini terjadi, gunakan newLatLngBounds(LatLngBounds, int, int, int) dan berikan dimensi peta secara manual.

Parameter
batas wilayah agar sesuai dengan layar
padding spasi (dalam px) yang tersisa di antara tepi kotak pembatas dan tepi tampilan. Nilai ini diterapkan ke keempat sisi kotak pembatas.
Hasil

publik statis CameraUpdate newLatLngZoom (LatLng latLng, zoom float)

Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng, dan berpindah ke tingkat zoom yang diberikan.

Parameter
latLng objek LatLng yang berisi lintang dan bujur yang diinginkan.
zoom tingkat zoom yang diinginkan, dalam rentang 2,0 hingga 21,0. Nilai di bawah rentang ini ditetapkan ke 2.0, dan nilai di atasnya ditetapkan ke 21.0. Naikkan nilai untuk memperbesar. Tidak semua area memiliki ubin pada tingkat zoom terbesar.
Hasil

public static CameraUpdate scrollBy (float xPixel, float yPixel)

Menampilkan CameraUpdate yang men-scroll kamera di atas peta, menggeser bagian tengah tampilan menurut jumlah piksel yang ditentukan dalam arah x dan y.

Contoh:

  • Jika xPixel = 5 dan yPixel = 0, sistem akan men-scroll ke kanan dengan menggerakkan kamera sehingga peta tampak bergeser 5 piksel ke kiri.
  • Jika xPixel = 0 dan yPixel = 5, sistem akan men-scroll ke bawah dengan menggerakkan kamera sehingga peta tampak bergeser 5 piksel ke atas.

Scrolling tersebut sesuai dengan orientasi kamera saat ini. Misalnya, jika kamera mengarah 90 derajat, maka timur di "atas" dan men-scroll ke kanan akan menggerakkan kamera ke selatan.

Parameter
xPixel jumlah {i>pixel<i} untuk menggulir secara horizontal. Nilai positif menggerakkan kamera ke kanan, sesuai dengan orientasi saat ini. Nilai negatif menggerakkan kamera ke kiri, sehubungan dengan orientasi saat ini.
yPixel jumlah piksel untuk bergulir secara vertikal. Nilai positif menggerakkan kamera ke bawah, sesuai dengan orientasinya saat ini. Nilai negatif menggerakkan kamera ke atas, sesuai dengan orientasi saat ini.
Hasil

public static CameraUpdate zoomBy (float amount, Point focus)

Menampilkan CameraUpdate yang menggeser tingkat zoom sudut pandang kamera saat ini.

Titik yang ditentukan oleh fokus akan tetap tetap (artinya, titik tersebut sesuai dengan lintang/bujur yang sama sebelum dan sesudah proses zoom).

Metode ini berbeda dengan zoomTo(float) dalam zoom tersebut yang relatif terhadap kamera saat ini.

Misalnya, jika LatLng (11.11, 22.22) saat ini berada di lokasi layar (23, 45). Setelah memanggil metode ini dengan jumlah zoom dan LatLng ini, lokasi layar LatLng ini akan tetap (23, 45).

Parameter
jumlah untuk mengubah tingkat zoom. Nilai positif menunjukkan zoom lebih dekat ke permukaan Bumi, sedangkan nilai negatif menunjukkan zoom jauh dari permukaan Bumi.
focus lokasi piksel pada layar yang akan tetap dipertahankan setelah proses zoom. Lintang/bujur yang berada di lokasi piksel tersebut sebelum kamera bergerak akan tetap sama setelah kamera bergerak.
Hasil

public static CameraUpdate zoomBy (float amount)

Menampilkan CameraUpdate yang menggeser tingkat zoom sudut pandang kamera saat ini.

Metode ini berbeda dengan zoomTo(float) dalam zoom tersebut yang relatif terhadap kamera saat ini.

Parameter
jumlah untuk mengubah tingkat zoom. Nilai positif menunjukkan zoom lebih dekat ke permukaan Bumi, sedangkan nilai negatif menunjukkan zoom jauh dari permukaan Bumi.
Hasil

publik static CameraUpdate zoomIn ()

Menampilkan CameraUpdate yang memperbesar peta dengan memindahkan tinggi titik pandang lebih dekat ke permukaan Bumi. Penambahan zoom adalah 1,0.

Hasil

public static CameraUpdate zoomOut ()

Menampilkan CameraUpdate yang memperkecil peta dengan memindahkan tinggi titik pandang lebih jauh dari permukaan Bumi. Penambahan zoom adalah -1,0.

Hasil

publik statis CameraUpdate zoomTo (zoom mengambang)

Menampilkan CameraUpdate yang memindahkan sudut pandang kamera ke tingkat zoom tertentu.

Parameter
zoom tingkat zoom yang diinginkan, dalam rentang 2,0 hingga 21,0. Nilai di bawah rentang ini ditetapkan ke 2.0, dan nilai di atasnya ditetapkan ke 21.0. Naikkan nilai untuk memperbesar. Tidak semua area memiliki ubin pada tingkat zoom terbesar.