Ubin Street View mirip dengan Ubin 2D, kecuali bahwa ubin ini berisi gambar panorama yang diambil di tingkat jalan. Dengan Street View, Anda dapat menjelajahi bangunan terkenal dunia, melihat keajaiban alam, dan memasuki tempat-tempat seperti museum, arena, restoran, atau bisnis kecil. Endpoint API ini memberi Anda akses ke:
- Petak Street View Google Maps
- Metadata Street View
- Thumbnail Street View
Anda dapat merangkai gambar yang diambil dari permukaan jalan untuk menciptakan efek panorama yang nyata. Selain itu, Anda dapat membuat kueri hingga 100 ID panorama untuk kumpulan lokasi (seperti rute), dan mendapatkan metadata yang lebih mendalam tentang posisi kamera.
Pelihat diperlukan untuk menggabungkan Kartu Street View. Misalnya, penampil panorama kustom Street View.
Setelah memiliki kunci API, Anda dapat mengakses gambar Street View dengan melakukan langkah-langkah berikut.
Dapatkan token sesi. Pastikan untuk menetapkan nilai
mapType
kestreetview
.Gunakan token sesi untuk mendapatkan ID panorama (panoId) dari satu atau beberapa lokasi geografis.
Gunakan ID panorama dari respons penelusuran panoId untuk mendapatkan:
Metadata Street View. Anda juga bisa mendapatkan metadata Street View dengan meneruskan kumpulan koordinat dan radius.
Metode Street View
Anda dapat mengakses metadata dan gambar Street View dengan memanggil salah satu dari empat metode berikut.
Metode | Deskripsi |
---|---|
https://tile.googleapis.com/v1/streetview/tiles |
Menampilkan setiap Kartu Street View. Anda dapat mengambil Kartu Street View pada enam tingkat zoom: dari 512 piksel, hingga 13.312 piksel. |
https://tile.googleapis.com/v1/streetview/panoIds |
Memungkinkan Anda menelusuri hingga 100 lokasi secara massal. Menampilkan ID panorama untuk semua lokasi dengan gambar. |
https://tile.googleapis.com/v1/streetview/thumbnail |
Menampilkan gambar JPEG thumbnail dari tampilan Street View. Memungkinkan Anda memberikan arah, kemiringan, dimensi, dan bidang pandang. Dimensi minimum adalah 16x16 piksel. Dimensi maksimum adalah 250x600 piksel. |
https://tile.googleapis.com/v1/streetview/metadata |
Memberikan informasi mendetail tentang panorama yang ditentukan. Detail mencakup alamat terkait, dan link ke panorama yang berdekatan. |
Penelusuran panoId Street View
Anda dapat menemukan ID panorama dari satu atau beberapa lokasi geografis dengan meneruskan koordinat (lat
, lng
) ke metode panoIds
. Isi permintaan adalah objek JSON yang berisi array locations
dan secara opsional, radius
, seperti yang ditunjukkan dalam contoh kode JSON berikut.
curl -X POST -d '{ "locations": [ {"lat": -33.883837, "lng": 151.209307}, {"lat": -33.883700, "lng": 151.210307}, {"lat": 0, "lng": 0} ], "radius": 50 }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY"
locations
- Array
locations
harus berisi setidaknya satu kumpulan nilai koordinat, tetapi Anda dapat menyertakan lebih banyak lagi—hingga maksimum 100. radius
- Nilai
radius
(diukur dalam meter) menentukan radius lingkaran di sekitar lokasi yang ditentukan untuk menelusuri panorama. Nilai defaultnya adalah 50 meter.
Respons PanoId
Map Tiles API mencoba menemukan panorama yang paling dekat dengan setiap lokasi, lalu menampilkan ID panoramanya. Permintaan panoIds
yang berhasil akan menampilkan objek JSON yang berisi array panoIds
. Array berisi daftar
ID panorama, sesuai dengan urutan Anda memintanya. Jika Map Tiles API
tidak dapat menemukan panorama untuk lokasi yang Anda minta, string kosong
akan ditampilkan di lokasi tersebut dalam array. Misalnya, lihat
kode JSON berikut.
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
Anda dapat menggunakan panoIds
untuk:
Metadata Street View
Permintaan metadata Street View mengambil informasi tentang panorama. Permintaan metadata Street View adalah permintaan GET HTTPS. Anda dapat mengambil informasi tentang panorama dengan salah satu dari dua cara berikut:
Jika Anda meneruskan
pano_id
, Map Tiles API akan menampilkan metadata untuk panorama tersebut.Namun, jika Anda meneruskan
lat
danlng
, Map Tiles API akan menampilkan metadata untuk panorama terdekat dalam radius penelusuran yang ditentukan.
Meneruskan kumpulan koordinat dan radius
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
Karena ID panorama bersifat sementara, sebaiknya Anda meneruskan sekumpulan
koordinat dan nilai radius
dalam permintaan metadata Street View awal.
Misalnya, lihat cuplikan kode berikut.
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
Meneruskan panoId gambar Street View
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Respons metadata
Kode JSON berikut adalah contoh respons metadata yang umum.
{
"panoId": "rZ9KeTyhA11i0VppYNzsSg",
"lat": 37.420864219339165,
"lng": -122.08446528377291,
"imageHeight": 6656,
"imageWidth": 13312,
"tileHeight": 512,
"tileWidth": 512,
"heading": 94.35,
"tilt": 88.39652,
"roll": 1.7181772,
"imageryType": "outdoor",
"date": "2023-01",
"copyright": "© 2023 Google",
"reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
"addressComponents": [
{
"longName": "United States",
"shortName": "United States",
"types": [
"country"
]
},
{
"longName": "Mountain View, California",
"shortName": "Mountain View, California",
"types": [
"locality"
]
},
{
"longName": "Charleston Rd",
"shortName": "Charleston Rd",
"types": [
"route"
]
},
{
"longName": "1635",
"shortName": "1635",
"types": [
"street_number"
]
}
],
"links": [
{
"panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
"heading": 274.47998046875,
"text": "Charleston Rd"
},
{
"panoId": "1cODYwFRw1aZ45IignDIMw",
"heading": 94.47999572753906,
"text": "Charleston Rd"
}
]
}
Daftar berikut berisi definisi kolom dalam isi respons.
panoId
- ID unik panorama ini. Anda tidak boleh mengandalkan ID Panorama yang valid selama lebih dari satu sesi pengguna.
lat
,lng
- Koordinat (lintang dan bujur) panorama. Nilai ini dapat berbeda dengan koordinat yang Anda teruskan dalam permintaan karena lokasi terpaskan ke panorama terdekat.
imageHeight
,imageWidth
- Dimensi gambar panorama yang digabungkan.
tileHeight
,tileWidth
- Dimensi satu ubin panorama.
heading
- Arah kompas, diukur dalam derajat, searah jarum jam dari Utara. Arah dikembalikan dalam rentang [0,360], dengan 0 mewakili arah Utara.
tilt
- Kemiringan panorama, diukur dalam derajat dari kutub selatan panorama ke cakrawala. Nilai yang ditampilkan berada dalam rentang [0, 180]. Nilai 90 derajat menunjukkan bahwa cakrawala sudah sejajar dengan khatulistiwa panorama.
roll
- Rotasi searah jarum jam di sekitar garis pandang yang diterapkan ke panorama untuk meratakan cakrawala. Nilai yang ditampilkan berada dalam rentang [0, 360].
imageryType
- Menunjukkan jenis gambar. Nilai yang valid adalah
indoor
danoutdoor
. date
- Tanggal gambar diambil. Tidak semua gambar memiliki data tanggal. Namun, jika tersedia, kolom ini berisi kombinasi tahun (YYYY) dan bulan (MM). Misalnya: 2023-05, atau 2024.
copyright
- Teks hak cipta yang harus Anda tampilkan sebagai atribusi bersama dengan gambar Street View.
reportProblemLink
- Hyperlink yang dapat digunakan pengguna untuk melaporkan masalah pada kartu street view ini. Anda harus menampilkan hyperlink ini di sudut kanan bawah gambar, dan hyperlink tersebut harus menyertakan teks link yang bertuliskan sesuatu seperti "Laporkan masalah dengan gambar ini".
addressComponent
- Geocode terstruktur yang berisi detail tentang alamat panorama. Untuk informasi selengkapnya, lihat Permintaan dan respons geocoding dalam dokumentasi Geocoding API.
links
- Daftar ID panorama yang ditautkan ke panorama ini. Juga berisi judul tempat link ditemukan. Misalnya, jika arahnya adalah 180°, panorama yang ditautkan akan mengarah ke selatan dari panorama saat ini. Perhatikan bahwa karena ID panorama bersifat sementara, Anda tidak boleh mengandalkannya untuk lebih dari satu sesi pengguna.
Thumbnail Street View
Anda dapat meminta gambar Street View dalam format thumbnail
. Thumbnail adalah gambar non-petak dengan ukuran, arah, sudut kemiringan, dan bidang pandang yang ditentukan pengguna.
Gambar thumbnail memiliki resolusi lebih rendah daripada ubin, dan ukuran file-nya lebih kecil. Anda membuat permintaan thumbnail dengan mengirimkan permintaan GET ke endpoint thumbnail
, seperti yang ditunjukkan dalam prototipe kode berikut.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId &height=FROM_16_TO_250 &width=FROM_16_TO_600 &pitch=FROM-90_TO_90 &yaw=FROM-360_TO_360 &fov=FROM_30_TO_120"
Pertimbangkan contoh kode berikut, yang mendownload thumbnail gambar Street View yang diambil di Whistler, Kanada.
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=Zzl28rqGJgaL2IdkUleP8A &height=200 &width=200 &pitch=0 &yaw=250 &fov=80" --output /tmp/example_thumbnail.png
Parameter wajib
panoId
- ID unik thumbnail yang Anda inginkan. Anda bisa mendapatkan nilai ID panorama
dari endpoint
panoIds
, atau dari endpointmetadata
—keduanya menerima koordinat geografis, dan menampilkanpanoId
yang sesuai. session
- Token sesi yang valid.
key
- Kunci API Anda.
Parameter opsional
height
- Menentukan tinggi thumbnail dalam piksel, mulai dari 16 piksel hingga 250 piksel. Jika Anda tidak menentukan tinggi, tinggi akan ditetapkan secara default ke nilai maksimum yang diizinkan sebesar 250 piksel. Jika Anda menentukan nilai yang berada di luar rentang, gambar thumbnail akan beralih ke nilai valid terdekat.
width
- Menentukan lebar thumbnail dalam piksel, mulai dari 16 piksel hingga 600 piksel. Jika Anda tidak menentukan lebar, lebar akan ditetapkan secara default ke nilai maksimum yang diizinkan sebesar 600 piksel. Jika Anda menentukan nilai yang berada di luar rentang, thumbnail akan beralih ke nilai valid terdekat.
pitch
- Menentukan sudut kamera di sepanjang sumbu vertikal. Nilai yang valid berada dalam
rentang
-90
hingga90
(inklusif). Nilai defaultnya adalah 0. yaw
- Menentukan arah kamera di sepanjang sumbu horizontal. Nilai yang valid
berada dalam rentang
-360
hingga360
(inklusif). Nilai defaultnya adalah 0. fov
- Menentukan bidang pandang horizontal, yang dinyatakan dalam derajat, dengan nilai maksimum 120. Saat menangani area pandang berukuran tetap, seperti pada gambar Street View dengan ukuran tertentu, ruang pandang mewakili zoom. Dalam hal ini, nilai yang lebih kecil akan menentukan tingkat zoom yang lebih tinggi. Nilai defaultnya adalah 90.
Petak gambar Street View
Setelah memiliki panoId
, Anda dapat meminta ubin gambar Street View. Permintaan
petak adalah permintaan HTTPS GET. Perhatikan contoh berikut.
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
Dalam contoh kode ini, z
adalah tingkat zoom, dan
x
dan y
adalah
koordinat ubin
dari ubin Street View yang Anda inginkan. Tingkat zoom dalam panorama Street View harus berada dalam rentang [0,5], dengan 0 mewakili bidang pandang terluas.
Tingkat Zoom | Perkiraan Ruang Pandang |
---|---|
0 | 360° |
1 | 180° |
2 | 90° |
3 | 45° |
4 | 22,5° |
5 | 11,25° |
Respons Petak Street View
Permintaan ubin Street View yang berhasil akan menampilkan gambar dengan format dan ukuran
yang Anda tentukan dalam respons createSession
.
Pada tingkat zoom nol, seluruh panorama diubah ukurannya menjadi ubin dengan dimensi
tileWidth
kali tileHeight
. Karena panorama berukuran lebih besar dalam dimensi x,
petak akan berisi ruang kosong dalam dimensi y:
Pada tingkat zoom lima, panorama berukuran penuh akan digunakan dan dibagi menjadi ubin.
Informasi hak cipta
Anda harus menampilkan informasi hak cipta pada setiap panorama Street View. String
yang akan ditampilkan dapat bervariasi antar-panorama. Untuk mendapatkan informasi hak cipta, Anda harus meminta metadata Street View, lalu dapat merujuk ke kolom copyright
respons. Untuk mengetahui informasi selengkapnya, lihat
Atribusi data.