Street View parçaları, sokak seviyesinde çekilen panoramik görüntüler içermesi dışında 2D parçalara benzer. Street View sayesinde dünyanın önemli noktaları ile doğa harikalarını keşfedebilir ve müze, meydan, restoran veya küçük işletmeler gibi yerleri ziyaret edebilirsiniz. Bu API uç noktası şunları sunar:
- Google Haritalar Street View Parçaları
- Street View meta verileri
- Street View küçük resimleri
Gerçekçi bir panoramik efekt oluşturmak için sokak seviyesinden çekilen resim karolarını bir araya getirebilirsiniz. Ayrıca, bir konum grubu (rota gibi) için 100'e kadar panorama kimliği sorgulayabilir ve kamera konumu hakkında daha ayrıntılı meta veriler elde edebilirsiniz.
Street View parçalarının bir araya getirilmesi için izleyicinin gerekli işlemler yapması gerekir. Örneğin, Street View özel panorama görüntüleyicisi.
API anahtarınız olduktan sonra aşağıdaki adımları uygulayarak Street View görüntülerine erişebilirsiniz.
Oturum jetonu alın.
mapType
değerinistreetview
olarak ayarladığınızdan emin olun.Bir veya daha fazla coğrafi konumun panorama tanımlayıcısını (panoId) almak için oturum jetonunu kullanın.
Aşağıdakileri almak için panoId arama yanıtındaki panorama tanımlayıcılarını kullanın:
Street View meta verileri. Ayrıca bir koordinat grubu ve yarıçap göndererek Street View meta verilerini de alabilirsiniz.
Street View yöntemleri
Aşağıdaki dört yöntemden birini kullanarak Street View görüntülerine 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 karolarını altı yakınlaştırma düzeyinde alabilirsiniz: 512 piksel ile 13.312 piksel arasında. |
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 resmini 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 panoramayla ilgili ayrıntılı bilgi sağlar. Ayrıntılar arasında ilgili adres ve bitişik panoramaların bağlantıları yer alır. |
Street View panoIds araması
Bir veya daha fazla coğrafi konumun koordinatlarını (lat
, lng
) panoIds
yöntemine ileterek bu konumların panorama tanımlayıcısını 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 nesnesi.
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 daha ekleyebilirsiniz.radius
radius
değeri (metre cinsinden ölçülür), panorama aranacak belirli konumun etrafındaki dairenin yarıçapını tanımlar. Varsayılan değer 50 metredir.
PanoId yanıtı
Harita Karoları API'si, her konuma en yakın panoramayı bulmaya çalışır ve ardından 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ıradaki panorama kimliklerinin listesini içerir. Harita Karoları API'si, istediğiniz konumlar için panorama bulamıyorsa dizindeki 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
'ü şu amaçlarla kullanabilirsiniz:
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:
pano_id
gönderirseniz Map Tiles API, ilgili panoramanın meta verilerini döndürür.Ancak
lat
velng
parametrelerini gönderirseniz Map Tiles API, belirtilen arama yarıçapı içindeki en yakın panoramanın meta verilerini döndürür.
Bir koordinat grubu 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 koordinat grubu 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"
Bir Street View resminin panoId değerini 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ına örnektir.
{
"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övdesinde bulunan 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ğını varsaymayın.
lat
,lng
- Panoramanın koordinatları (enlem ve boylam). Konum en yakın panoramaya sabitlendiğinden bu değerler, istekte belirttiğiniz koordinatlardan farklı olabilir.
imageHeight
,imageWidth
- Birleştirilmiş panorama resminin boyutları.
tileHeight
,tileWidth
- Tek bir panorama karosunun 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 eğiminin, panoramanın güney kutbundan ufuğa kadar olan derece cinsinden değeri. Döndürülen değerler [0, 180] aralığındadır. 90 derecelik bir değer, ufkun panoramanın ekvatorunda zaten hizalandığını gösterir.
roll
- Ufku düzleştirmek için panoramaya uygulanan görüş hattı etrafında saat yönünde dönme. Döndürülen değerler [0, 360] aralığındadır.
imageryType
- Resmin türünü belirtir. Geçerli değerler
indoor
veoutdoor
'dir. date
- Resmin çekildiği tarih. Tüm resimlerde tarih verileri yoktur. Ancak mevcut olduğunda bu alan 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 karosuyla ilgili sorunları bildirmek için kullanacağı köprü bağlantısı. 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 belgelerinin Coğrafi kodlama istekleri ve yanıtları bölümünü inceleyin.
links
- Bu panoramaya bağlantı veren panorama kimliklerinin listesi. Bağlantının bulunduğu başlığı da içerir. Örneğin, yön 180° ise bağlı panorama, mevcut panoramanın tam güneyindedir. Panorama kimliklerinin geçici yapısı nedeniyle, tek bir kullanıcı oturumundan daha fazlası için bu kimliklere güvenmemeniz gerektiğini unutmayın.
Street View küçük resimleri
thumbnail
biçiminde Street View görüntüleri isteyebilirsiniz. Küçük resimler, kullanıcı tanımlı boyut, başlık, eğim ve görüş alanına sahip, karo olmayan resimlerdir.
Küçük resimler, karolara kıyasla daha düşük çözünürlükte ve daha küçük dosya boyutundadır. Aşağıdaki kod prototipinde gösterildiği gibi, thumbnail
uç noktasına bir GET isteği göndererek küçük resim isteği gönderirsiniz.
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 kentinde ç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
Gerekli parametreler
panoId
- İstediğiniz küçük resmin benzersiz kimliği. Panorama kimliği değerlerini
panoIds
uç noktasından veyametadata
uç noktasından alabilirsiniz. Her ikisi de coğrafi koordinatları kabul eder ve uygunpanoId
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 ile 250 piksel arasında olabilir. Yükseklik belirtmezseniz yükseklik varsayılan olarak izin verilen maksimum değer olan 250 piksel olur. Aralık dışında bir değer belirtirseniz küçük resim, en yakın geçerli değere sabitlenir.
width
- Küçük resmin piksel cinsinden genişliğini belirtir. Bu değer 16 ile 600 piksel arasında olabilir. Genişlik belirtilmezse genişlik varsayılan olarak izin verilen maksimum değer olan 600 piksele ayarlanır. Aralık dışında bir değer belirtirseniz küçük resim, en yakın geçerli değere sabitlenir.
pitch
- Kameranın dikey eksendeki açısını belirtir. Geçerli değerler
-90
ile90
(dahil) aralığındadır. Varsayılan değer 0'dır. yaw
- Kameranın yatay eksendeki yönünü belirtir. Geçerli değerler
-360
ile360
aralığındadır (bu değerler dahil). Varsayılan değer 0'dır. fov
- Yatay görüş alanını derece cinsinden belirtir. Maksimum değer 120'dir. Sabit boyutlu bir görüntü alanında (ör. belirli boyuttaki bir Street View resmi) görüş alanı, yakınlaştırmayı temsil eder. Bu durumda, 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 resim parçaları
panoId
aldıktan sonra Street View resim parçası isteğinde bulunabilirsiniz. Karo 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 karosunun karot koordinatlarıdır. Street View panoramalarındaki yakınlaştırma seviyeleri [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ı yanıtları
Başarılı bir Street View karo isteği, createSession
yanıtınızda belirttiğiniz biçim ve boyuttaki bir resim döndürür.
Sıfır yakınlaştırma düzeyinde, panoramanın tamamı tileWidth
xtileHeight
boyutlarında bir karoya yeniden boyutlandırılır. Panoramalar x boyutunda daha büyük olduğundan karo, y boyutunda boş alan içerir:
Beş yakınlaştırma düzeyinde tam boyutlu panorama kullanılır ve karolara bölünür.
Telif hakkı bilgileri
Her Street View panoramasında telif hakkı bilgilerini göstermeniz gerekir. Gösterilecek 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.