Street View Kutuları

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Street View parçaları örneği

Street View parçaları, sokak düzeyinde çekilmiş panoramik görüntüler içermeleri dışında 2D parçalara benzer. Street View sayesinde dünyanın önemli noktaları ile doğa harikalarını keşfedebilir ve müze, arena, restoran veya küçük işletmeler gibi yerleri ziyaret edebilirsiniz. Bu API uç noktasıyla erişebileceğiniz özellikler:

  • Google Haritalar Street View Parçaları
  • Street View meta verileri
  • Street View küçük resimleri

Sokak seviyesinde çekilen görüntüleri birleştirerek gerçek hayattaki panoramik efekti oluşturabilirsiniz. Ayrıca, bir dizi konum (ör. rota) için 100'e kadar panorama kimliği sorgulayabilir ve kamera konumu hakkında daha ayrıntılı meta veriler alabilirsiniz.

Street View parçalarını birleştirmek için bir görüntüleyici gerekir. Örneğin, Street View özel panorama görüntüleyici.

API anahtarınız olduğunda aşağıdaki adımları uygulayarak Street View görüntülerine erişebilirsiniz.

  1. Oturum jetonu alın. mapType değerini streetview olarak ayarladığınızdan emin olun.

  2. Bir veya daha fazla coğrafi konumun panorama tanımlayıcısını (panoId) almak için oturum jetonunu kullanın.

  3. panoId arama yanıtındaki panorama tanımlayıcılarını kullanarak şunları elde edin:

    1. Street View meta verileri. Ayrıca bir dizi koordinat ve yarıçap ileterek Street View meta verilerini de alabilirsiniz.

    2. Street View küçük resimleri.

    3. Street View parçaları.

Street View yöntemleri

Aşağıdaki dört yöntemden birini çağırarak Street View görüntüleri ve meta verilerine erişebilirsiniz.

Yöntem Açıklama
https://tile.googleapis.com/v1/streetview/tiles Ayrı Street View parçalarını döndürür. Street View döşemelerini altı yakınlaştırma düzeyinde (512 pikselden 13.312 piksele kadar) alabilirsiniz.
https://tile.googleapis.com/v1/streetview/panoIds En fazla 100 konum için toplu arama yapmanıza olanak tanır. Görüntü içeren tüm konumların panorama kimliklerini döndürür.
https://tile.googleapis.com/v1/streetview/thumbnail Bir Street View sahnesinin küçük resim JPEG görüntüsünü döndürür. Başlık, eğim, boyutlar ve görüş alanı sağlamanıza olanak tanır. Minimum boyut 16x16 pikseldir. Maksimum boyutlar 250x600 pikseldir.
https://tile.googleapis.com/v1/streetview/metadata Belirtilen panorama hakkında ayrıntılı bilgi sağlar. Ayrıntılar arasında ilgili adres ve yakındaki panoramaların bağlantıları yer alır.

Bir veya daha fazla coğrafi konumun panorama tanımlayıcısını, koordinatlarını (lat, lng) panoIds yöntemine ileterek bulabilirsiniz. İstek gövdesi, aşağıdaki JSON kodu örneğinde gösterildiği gibi bir locations dizisi ve isteğe bağlı olarak bir radius içeren bir JSON nesnesidir.

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
locations dizisi en az bir koordinat değeri grubu içermelidir ancak en fazla 100 tane olmak üzere daha fazla değer ekleyebilirsiniz.
radius
radius değeri (metre cinsinden ölçülür), panoramaların aranacağı, belirtilen konumun etrafındaki dairenin yarıçapını tanımlar. Varsayılan değer 50 metredir.

PanoId yanıtı

Map Tiles API, her konuma en yakın panoramayı bulmaya çalışır ve ardından bu panoramaların panorama kimliklerini döndürür. Başarılı bir panoIds isteği, panoIds dizisi içeren bir JSON nesnesi döndürür. Dizi, istediğiniz sırayla panorama kimliklerinin listesini içerir. Map Tiles API, istediğiniz konumlar için panorama bulamazsa dizideki ilgili konumda boş bir dize döndürülür. Örnek için aşağıdaki JSON koduna bakın.

{
  "panoIds": [
    "ACfH-n2HcBvRry_3oc9grw",
    "f5DJZatBAAAXHlooS2wKbw",
    ""
  ]
}

panoIds simgesini kullanarak:

Street View meta verileri

Street View meta veri istekleri, panoramalarla ilgili bilgileri alır. Street View meta veri isteği, bir HTTPS GET isteğidir. Panoramalarla ilgili bilgileri iki şekilde alabilirsiniz:

  • pano_id iletirseniz Map Tiles API, söz konusu panoramaya ait meta verileri döndürür.

  • Ancak lat ve lng parametrelerini iletirseniz Map Tiles API, belirtilen arama yarıçapı içindeki en yakın panoramaya ait meta verileri döndürür.

Bir dizi koordinat ve yarıçap iletme

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&lat=lat&lng=lng&radius=meters"

Panorama kimlikleri geçici olduğundan, ilk Street View meta veri isteğinizde bir dizi koordinat ve radius değeri iletmenizi öneririz. Örnek için aşağıdaki kod snippet'ine bakın.

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&lat=47.62066&lng=-122.34923&radius=50"

Street View görüntüsünün panoId'sini iletme

curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=panoId"

Meta veri yanıtı

Aşağıdaki JSON kodu, tipik bir meta veri yanıtı örneğidir.

{
 "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"
  }
 ]
}

Aşağıdaki listede, yanıt gövdesindeki alanların tanımları yer almaktadır.

panoId
Bu panoramanın benzersiz kimliği. Panorama kimliklerinin tek bir kullanıcı oturumundan daha uzun süre geçerli olmasını beklememelisiniz.
lat, lng
Panoramanın koordinatları (enlem ve boylam). Bu değerler, konum en yakın panoramaya yerleştirildiğinden istekte ilettiğiniz koordinatlardan farklı olabilir.
imageHeight, imageWidth
Birleştirilmiş panorama resminin boyutları.
tileHeight, tileWidth
Tek bir panorama kutusunun boyutları.
heading
Kuzeyden saat yönünde derece cinsinden ölçülen pusula yönü. Başlıklar [0, 360] aralığında döndürülür. 0 değeri kuzeyi gösterir.
tilt
Panoramanın güney kutbundan ufka kadar olan eğimi (derece cinsinden). Döndürülen değerler [0, 180] aralığındadır. 90 derecelik bir değer, ufkun zaten panoramadaki ekvatorla hizalandığını gösterir.
roll
Ufuk çizgisini düzleştirmek için panoramaya uygulanan görüş hattı etrafındaki saat yönünde dönüş. Döndürülen değerler [0, 360] aralığındadır.
imageryType
Resmin türünü belirtir. Geçerli değerler indoor ve outdoor'dir.
date
Resmin çekildiği tarih. Tüm resimlerde tarih verisi yoktur. Ancak bu alan, kullanıma sunulduğunda yıl (YYYY) ve ay (AA) kombinasyonunu içerir. Örneğin: 2023-05 veya 2024.
copyright
Sokak Görünümü resmiyle birlikte ilişkilendirme olarak göstermeniz gereken telif hakkı metni.
reportProblemLink
Kullanıcılarınızın bu sokak görünümü döşemesiyle ilgili sorunları bildirmek için kullanabileceği bir köprü. Bu köprüyü resmin sağ alt köşesinde göstermeniz ve "Bu resimle ilgili bir sorun bildir" gibi bir bağlantı metni eklemeniz gerekir.
addressComponent
Panoramanın adresiyle ilgili ayrıntıları içeren yapılandırılmış bir coğrafi kod. Daha fazla bilgi için Geocoding API belgelerindeki
Coğrafi kodlama istekleri ve yanıtları bölümüne bakın .
links
Buna bağlantı veren panorama kimliklerinin listesi. Bağlantının bulunduğu başlığı da içerir. Örneğin, başlık 180° ise bağlı panorama, mevcut panoramanın güneyindedir. Panorama kimliklerinin geçici yapısı nedeniyle, bunları tek bir kullanıcı oturumundan daha uzun süre kullanmamanız gerektiğini unutmayın.

Street View küçük resimleri

Street View görüntülerini thumbnail biçiminde isteyebilirsiniz. Küçük resimler, kullanıcının tanımladığı boyut, başlık, eğim ve görüş alanına sahip, döşenmemiş resimlerdir. Küçük resimlerin çözünürlüğü döşemelerden daha düşüktür ve dosya boyutu daha küçüktür. Aşağıdaki kod prototipinde gösterildiği gibi, thumbnail uç noktasına bir GET isteği göndererek küçük resim isteğinde bulunursunuz.

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"

Kanada'nın Whistler şehrinde çekilen Street View görüntülerinin küçük resmini indiren aşağıdaki kod örneğini inceleyin.

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

Kanada, Whistler'ın Street View küçük resmi

Gerekli parametreler

panoId
İstediğiniz küçük resmin benzersiz kimliği. Panorama kimliği değerlerini panoIds uç noktasından veya metadata uç noktasından alabilirsiniz. Her iki uç nokta da coğrafi koordinatları kabul eder ve uygun panoId değerini döndürür.
session
Geçerli bir oturum jetonu.
key
API anahtarınız.

İsteğe bağlı parametreler

height
Küçük resmin piksel cinsinden yüksekliğini belirtir. Bu değer 16 piksel ile 250 piksel arasında olabilir. Yükseklik belirtmezseniz varsayılan olarak izin verilen maksimum değer olan 250 piksel kullanılır. Aralık dışında bir değer belirtirseniz küçük resim, en yakın geçerli değere sabitlenir.
width
Küçük resmin genişliğini piksel cinsinden belirtir (16 piksel ile 600 piksel arasında). Genişlik belirtmezseniz genişlik varsayılan olarak izin verilen maksimum değer olan 600 piksel olur. Aralık dışında bir değer belirtirseniz küçük resim, en yakın geçerli değere sabitlenir.
pitch
Kameranın dikey eksen boyunca açısını belirtir. Geçerli değerler, -90 ile 90 (bu değerler dahil) aralığındadır. Varsayılan değer 0'dır.
yaw
Kameranın yatay eksen boyunca yönünü belirtir. Geçerli değerler, -360 ile 360 (bu değerler dahil) aralığındadır. Varsayılan değer 0'dır.
fov
Yatay görüş alanını derece cinsinden belirtir. Maksimum değer 120'dir. Belirli bir boyuttaki Street View görüntüsünde olduğu gibi sabit boyutlu bir görüntü alanıyla çalışırken görüş alanı, yakınlaştırmayı temsil eder. Daha küçük değerler daha yüksek bir yakınlaştırma düzeyini belirtir. Varsayılan değer 90'dır.

Street View görüntü parçaları

panoId sahibi olduğunuzda Street View görüntü parçası isteğinde bulunabilirsiniz. Döşeme istekleri, HTTPS GET istekleridir. Aşağıdaki örneği inceleyin.

curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY&panoId=panoId"

Bu kod örneğinde z yakınlaştırma seviyesi, x ve y ise istediğiniz Street View Parçasının parça koordinatlarıdır. Street View panoramalarındaki yakınlaştırma düzeyleri [0,5] aralığında olmalıdır. 0, en geniş görüş alanını temsil eder.

Yakınlaştırma Düzeyi Yaklaşık Görüş Alanı
0 360°
1 180°
2 90°
3 45°
4 22,5°
5 11,25°

Street View parçalarıyla ilgili yanıtlar

Başarılı bir Street View döşemesi isteği, createSession yanıtınızda belirttiğiniz biçim ve boyuttaki bir resmi döndürür.

Başarılı bir Tile isteğinin sonucu

Sıfır yakınlaştırma seviyesinde, panoramaların tamamı tileWidth x tileHeight boyutlarında bir parça olarak yeniden boyutlandırılır. Panoramalar x boyutunda daha büyük olduğundan, karo y boyutunda boş alan içerir:

Sıfır yakınlaştırma seviyesi

Beşinci yakınlaştırma seviyesinde, tam boyutlu panorama kullanılır ve parçalara bölünür.

Her Street View panoramasında telif hakkı bilgilerini göstermeniz gerekir. Görüntülenecek dize panoramalar arasında farklılık gösterebilir. Telif hakkı bilgilerini almak için Street View meta verilerini istemeniz gerekir. Ardından, yanıtın copyright alanına bakabilirsiniz. Daha fazla bilgi için Veri ilişkilendirmeleri başlıklı makaleyi inceleyin.