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 ile dünyanın önemli noktalarını ve doğa harikalarını keşfedebilir, müze, arena, restoran veya küçük işletme gibi yerleri ziyaret edebilirsiniz. Bu API uç noktasıyla şunlara erişebilirsiniz:

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

Sokak düzeyinde çekilen resim bloklarını birleştirerek gerçek hayattaki panoramik efektler 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üleyicisi.

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. Oturum jetonunu kullanarak bir veya daha fazla coğrafi konumun panorama tanımlayıcısını (panoId) alın.

  3. Şunları almak için panoId arama yanıtındaki panorama tanımlayıcılarını kullanın:

    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 kullanarak 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 100'e kadar 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 boyutlar 16x16 pikseldir. Maksimum boyut 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 panoramalara 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 grubu ekleyebilirsiniz.
radius
radius değeri (metre cinsinden ölçülür), belirli bir konumun etrafındaki dairenin yarıçapını tanımlar. Bu yarıçap içinde panoramalar aranır. Varsayılan değer 50 metredir.

PanoId yanıtı

Map Tiles API, her konuma en yakın panoramayı bulmaya çalışır ve ardından panoramaların 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 öğesini kullanarak şunları yapabilirsiniz:

Street View meta verileri

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

  • Bir pano_id iletirseniz Map Tiles API, söz konusu panorama için meta verileri döndürür.

  • Ancak lat ve lng değerlerini iletirseniz Map Tiles API, verilen arama yarıçapı içindeki en yakın panorama için 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 bir 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 olacağına güvenmemelisiniz.
lat, lng
Panoramanın koordinatları (enlem ve boylam). Konum en yakın panoramaya yerleştiğinden bu değerler, istekte ilettiğiniz koordinatlardan farklı olabilir.
imageHeight, imageWidth
Birleştirilmiş panorama görüntüsünün boyutları.
tileHeight, tileWidth
Tek bir panorama kutusunun boyutları.
heading
Kuzeyden saat yönünde derece cinsinden ölçülen pusula istikameti. Başlıklar [0,360] aralığında döndürülür. 0 değeri tam kuzeyi gösterir.
tilt
Panoramanın eğimi, panoramanın güney kutbundan ufka doğru derece cinsinden ölçülür. 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 bulunmaz. Ancak bu alan, kullanılabilir olduğ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 Street View 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 bildirin" 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üğü kutucuklardan 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 yüksekliğini piksel cinsinden belirtir (16 piksel ile 250 piksel arasında). 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 varsayılan olarak izin verilen maksimum değer olan 600 piksel kullanılır. 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) arası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) arasındadır. Varsayılan değer 0'dır.
fov
Maksimum 120 değerine sahip, derece cinsinden ifade edilen yatay görüş alanını belirtir. Sabit boyutlu bir görüntü alanıyla (ör. belirli bir boyuttaki bir Street View resmi) ç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 düzeyi, x ve y ise istediğiniz Street View döşemesinin döşeme 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 boyutta bir resim döndürür.

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

Sıfır yakınlaştırma düzeyinde, tüm panorama tileWidth x tileHeight boyutlarında bir döşeme olarak yeniden boyutlandırılır. Panoramalar x boyutunda daha büyük olduğundan, döşemede y boyutunda boş alan bulunur:

Sıfır yakınlaştırma düzeyi

Beşinci yakınlaştırma düzeyinde, 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 değişiklik 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.