Ubin Street View

Contoh Street ViewUbin Street View mirip dengan Ubin 2D kecuali bahwa ubin ini berisi gambar panorama yang diambil di permukaan jalan. Dengan Street View, Anda dapat menjelajahi tempat terkenal di dunia, melihat keajaiban alam, dan masuk ke tempat-tempat seperti museum, arena, restoran, atau bisnis kecil. Endpoint API ini memberi Anda akses ke:

  • Ubin Street View Google Maps
  • Metadata Street View
  • Thumbnail Street View

Anda dapat menggabungkan ubin gambar yang diambil dari permukaan jalan untuk membuat efek panorama yang nyata. Anda juga dapat membuat kueri hingga 100 ID panorama untuk satu set lokasi (seperti rute), serta mendapatkan metadata yang lebih mendalam tentang posisi kamera.

Penampil diperlukan untuk menggabungkan Ubin 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 sekumpulan koordinat dan radius.

    2. Thumbnail Street View.

    3. Kartu Street View.

Metode Street View

Anda dapat mengakses gambar dan metadata Street View dengan memanggil salah satu dari empat metode berikut.

Metode Deskripsi
https://tile.googleapis.com/v1/streetview/tiles Menampilkan masing-masing Ubin Street View. Anda dapat mengambil Street View Tiles pada enam tingkat zoom: dari 512 piksel, hingga 13.312 piksel.
https://tile.googleapis.com/v1/streetview/panoIds Memungkinkan Anda menelusuri secara massal hingga 100 lokasi. Menampilkan ID panorama untuk semua lokasi dengan gambar.
https://tile.googleapis.com/v1/streetview/thumbnail Menampilkan gambar JPEG thumbnail dari pemandangan Street View. Memungkinkan Anda memberikan judul, saran lagu, dimensi, dan ruang 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. Detailnya 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 nilai koordinat, 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 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 diberikan.

Meneruskan sekumpulan 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 teruskan sekumpulan koordinat dan nilai radius dalam permintaan metadata Street View awal Anda. Untuk contoh, 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 dari koordinat yang Anda teruskan dalam permintaan karena lokasi dipaskan ke panorama terdekat.
imageHeight, imageWidth
Dimensi gambar panorama yang digabungkan.
tileHeight, tileWidth
Dimensi satu ubin panorama.
heading
Judul kompas, diukur dalam derajat, searah jarum jam dari Utara. Arah ditampilkan dalam rentang [0,360], dengan 0 mewakili batas Utara.
tilt
Kemiringan panorama, yang diukur dalam derajat dari kutub selatan panorama ke cakrawala. Nilai yang ditampilkan berada dalam rentang [0, 180]. Nilai 90 derajat menunjukkan bahwa cakrawala tersebut sudah sejajar dengan ekuator 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 pengambilan gambar. Tidak semua gambar memiliki data tanggal. Namun, jika tersedia, kolom ini akan berisi kombinasi tahun (YYYY) dan bulan (MM). Misalnya: 05-2023, 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 di sudut kanan bawah gambar, dan hyperlink harus menyertakan teks link yang menyatakan 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 tertaut ke ID panorama ini. Juga berisi {i>heading<i} tempat tautan ditemukan. Misalnya, jika arah tujuan 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-ubin dengan ukuran, arah, pitch, dan ruang pandang yang ditentukan pengguna. Gambar thumbnail memiliki resolusi lebih rendah daripada kartu, dan ukuran filenya 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"

Perhatikan 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—yang 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 menetapkan tinggi, tinggi akan ditetapkan secara default ke nilai maksimum yang diizinkan, yaitu 250 piksel. Jika Anda menentukan nilai yang berada di luar rentang, thumbnail akan dipaskan 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, yaitu 600 piksel. Jika Anda menentukan nilai yang berada di luar rentang, thumbnail akan dipaskan 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 default s 0.
fov
Menentukan ruang 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 menyatakan zoom; sedangkan 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 kartu adalah permintaan GET HTTPS. 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, serta x dan y adalah koordinat ubin untuk ubin Street View yang Anda inginkan. Tingkat zoom dalam panorama Street View harus berada dalam rentang [0,5], dengan 0 mewakili ruang pandang terluas.

Tingkat Zoom Perkiraan Ruang Pandang
0 360°
1 180°
2 90°
3 45°
4 22,5 °
5 11,25 °

Respons Kartu Street View

Permintaan kartu 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 akan diubah ukurannya menjadi ubin dimensi tileWidth oleh tileHeight. Karena panorama lebih besar dalam dimensi x, ubin akan berisi ruang kosong di dimensi y:

Tingkat zoom nol

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

Anda harus menampilkan informasi hak cipta pada setiap panorama Street View. String yang akan ditampilkan dapat bervariasi di antara panorama. Untuk mendapatkan informasi hak cipta, Anda harus meminta metadata Street View, lalu merujuk ke kolom copyright respons. Untuk mengetahui informasi selengkapnya, lihat Atribusi data.