Ubin Street View

Contoh Street ViewUbin 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.

  1. Dapatkan token sesi. Pastikan untuk menetapkan nilai mapType ke streetview.

  2. Gunakan token sesi untuk mendapatkan ID panorama (panoId) dari satu atau beberapa lokasi geografis.

  3. Gunakan ID panorama dari respons penelusuran panoId untuk mendapatkan:

    1. Metadata Street View. Anda juga bisa mendapatkan metadata Street View dengan meneruskan kumpulan koordinat dan radius.

    2. Thumbnail Street View.

    3. Ubin Street View.

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.

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 dan lng, 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 dan outdoor.
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

Thumbnail tampilan jalan Whistler, Kanada

Parameter wajib

panoId
ID unik thumbnail yang Anda inginkan. Anda bisa mendapatkan nilai ID panorama dari endpoint panoIds, atau dari endpoint metadata—keduanya menerima koordinat geografis, dan menampilkan panoId 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 hingga 90 (inklusif). Nilai defaultnya adalah 0.
yaw
Menentukan arah kamera di sepanjang sumbu horizontal. Nilai yang valid berada dalam rentang -360 hingga 360 (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.

Hasil permintaan Kartu yang berhasil

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:

Tingkat zoom nol

Pada tingkat zoom lima, panorama berukuran penuh akan digunakan dan dibagi menjadi ubin.

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.