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 merangkai ubin gambar yang diambil dari permukaan jalan untuk membuat efek panorama seperti di kehidupan nyata. Anda juga dapat membuat kueri hingga 100 ID panorama untuk satu set lokasi (seperti rute), dan mendapatkan metadata yang lebih mendalam tentang posisi kamera.

Sebuah 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. Ubin 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 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 adegan Street View. Memungkinkan Anda memberikan judul, pitch, dimensi, dan ruang pandang. Dimensi minimum adalah 16x16 piksel. Dimensi maksimum adalah 250x600 piksel.
https://tile.googleapis.com/v1/streetview/metadata Memberikan informasi detail tentang panorama yang ditetapkan. Detail termasuk alamat terkait, dan tautan ke panorama yang berdekatan.

Anda dapat menemukan ID panorama dari satu atau beberapa lokasi geografis dengan meneruskan koordinatnya (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, 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, kemudian menampilkan ID panorama mereka. 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 satu set 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 kumpulan 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 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 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. Heading ditampilkan dalam rentang [0,360], dengan 0 mewakili 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 sudah sejajar di ekuator panorama.
roll
Rotasi searah jarum jam di sekitar garis pandang yang diterapkan pada 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 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 terkait kartu Street View ini. Anda harus menampilkan hyperlink ini di sudut kanan bawah gambar, dan harus menyertakan teks link yang bertuliskan, 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 judul tempat tautan 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 mengandalkan ID ini 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, judul, 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 Street View 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 menentukan tinggi, tinggi akan ditetapkan secara default ke nilai maksimum yang diizinkan, yaitu 250 piksel. Jika Anda menentukan nilai 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, lebarnya 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 adalah 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 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 mewakili zoom; dengan nilai yang lebih kecil menentukan tingkat zoom yang lebih tinggi. Nilai defaultnya adalah 90.

Ubin 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 dari 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 Ubin Street View

Permintaan kartu Street View yang berhasil akan menampilkan gambar dengan format dan ukuran yang telah 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, kartu akan berisi ruang kosong di dimensi y:

Tingkat zoom nol

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

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