स्ट्रीट व्यू टाइल

यूरोपियन इकनॉमिक एरिया (ईईए) के डेवलपर

Street View टाइल का उदाहरण

Street View टाइल, 2D टाइल जैसी ही होती हैं. हालांकि, इनमें स्ट्रीट लेवल पर ली गई पैनोरामिक इमेज होती हैं. Street View की मदद से दुनिया भर की मशहूर जगहों के बारे में ज़्यादा जानें और कुदरत की हैरान कर देने वाली खूबसूरती देखें. साथ ही, संग्रहालयों, अरीना, रेस्टोरेंट, और छोटे कारोबार को अंदर से देखें. इस एपीआई एंडपॉइंट से आपको इनका ऐक्सेस मिलता है:

  • Google Maps Street View टाइल
  • Street View का मेटाडेटा
  • Street View के थंबनेल

स्ट्रीट लेवल से ली गई इमेज टाइल को जोड़कर, असली दुनिया जैसा पैनोरामिक इफ़ेक्ट बनाया जा सकता है. साथ ही, जगहों के सेट (जैसे कि कोई रास्ता) के लिए, ज़्यादा से ज़्यादा 100 पैनोरामा आईडी के बारे में क्वेरी की जा सकती है. साथ ही, कैमरे की पोज़िशन के बारे में ज़्यादा जानकारी वाला मेटाडेटा पाया जा सकता है.

Street View टाइल को एक साथ जोड़ने के लिए, व्यूअर की ज़रूरत होती है. उदाहरण के लिए, Street View का कस्टम पैनोरमा व्यूअर.

एपीआई पासकोड मिलने के बाद, Street View की तस्वीरें ऐक्सेस की जा सकती हैं. इसके लिए, यह तरीका अपनाएं.

  1. सेशन टोकन पाएं. mapType की वैल्यू को streetview पर सेट करना न भूलें.

  2. एक या उससे ज़्यादा भौगोलिक जगहों के पैनोरामा आइडेंटिफ़ायर (panoId) को पाने के लिए, सेशन टोकन का इस्तेमाल करें.

  3. panoId खोज के जवाब से पैनोरामा आइडेंटिफ़ायर का इस्तेमाल करके, ये जानकारी पाएं:

    1. Street View का मेटाडेटा. निर्देशांकों का सेट और दायरा पास करके भी, Street View का मेटाडेटा पाया जा सकता है.

    2. Street View के थंबनेल.

    3. Street View टाइल.

Street View के तरीके

यहां दिए गए चार तरीकों में से किसी एक को कॉल करके, Street View की तस्वीरें और मेटाडेटा को ऐक्सेस किया जा सकता है.

तरीका ब्यौरा
https://tile.googleapis.com/v1/streetview/tiles यह अलग-अलग Street View टाइल दिखाता है. Street View टाइल को ज़ूम करने के छह लेवल पर वापस लाया जा सकता है: 512 पिक्सल से लेकर 13,312 पिक्सल तक.
https://tile.googleapis.com/v1/streetview/panoIds इसकी मदद से, एक साथ 100 जगहों को खोजा जा सकता है. यह फ़ंक्शन, उन सभी जगहों के पैनोरामा आईडी दिखाता है जिनकी इमेज उपलब्ध हैं.
https://tile.googleapis.com/v1/streetview/thumbnail यह Street View के किसी सीन की थंबनेल JPEG इमेज दिखाता है. इससे आपको हेडिंग, पिच, डाइमेंशन, और फ़ील्ड ऑफ़ व्यू (कैमरे से दिख रहा व्यू) की जानकारी देने की सुविधा मिलती है. कम से कम डाइमेंशन 16x16 पिक्सल होने चाहिए. ज़्यादा से ज़्यादा डाइमेंशन 250x600 पिक्सल होने चाहिए.
https://tile.googleapis.com/v1/streetview/metadata इससे, चुने गए पैनोरामा के बारे में ज़्यादा जानकारी मिलती है. जानकारी में, संबंधित पता और आस-पास के पैनोरामा के लिंक शामिल होते हैं.

एक या उससे ज़्यादा भौगोलिक जगहों के पैनोरामा आइडेंटिफ़ायर का पता लगाया जा सकता है. इसके लिए, उनके निर्देशांक (lat, lng) को panoIds तरीके में पास करें. अनुरोध का मुख्य हिस्सा एक JSON ऑब्जेक्ट होता है. इसमें locations कलेक्शन और विकल्प के तौर पर radius शामिल होता है. इसे JSON कोड के इस उदाहरण में दिखाया गया है.

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 अरे में, निर्देशांक वैल्यू का कम से कम एक सेट होना चाहिए. हालांकि, इसमें ज़्यादा से ज़्यादा 100 सेट शामिल किए जा सकते हैं.
radius
radius वैल्यू (मीटर में मापी गई) दी गई जगह के आस-पास के सर्कल के दायरे को तय करती है. इस दायरे में पैनोरामा खोजे जाते हैं. डिफ़ॉल्ट वैल्यू 50 मीटर है.

PanoId response

Map Tiles API, हर जगह के सबसे नज़दीकी पैनोरामा को ढूंढने की कोशिश करता है. इसके बाद, यह उनके पैनोरामा आईडी दिखाता है. panoIds का अनुरोध पूरा होने पर, एक JSON ऑब्जेक्ट मिलता है. इसमें panoIds कलेक्शन शामिल होता है. इस कलेक्शन में पैनोरामा आईडी की सूची होती है. यह सूची उसी क्रम में होती है जिस क्रम में आपने अनुरोध किया था. अगर Map Tiles API को आपकी अनुरोध की गई जगहों के लिए कोई पैनोरामा नहीं मिलता है, तो अरे में उस जगह पर एक खाली स्ट्रिंग दिखती है. उदाहरण के लिए, यहां दिया गया JSON कोड देखें.

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

panoIds का इस्तेमाल करके, ये काम किए जा सकते हैं:

Street View का मेटाडेटा

Street View के मेटाडेटा के अनुरोधों से, पैनोरामा के बारे में जानकारी मिलती है. Street View के मेटाडेटा का अनुरोध, एचटीटीपीएस जीईटी अनुरोध होता है. पैनोरामा के बारे में जानकारी पाने के लिए, इनमें से कोई एक तरीका अपनाएं:

  • pano_id पास करने पर, Map Tiles API उस पैनोरामा का मेटाडेटा दिखाता है.

  • हालांकि, अगर आपने lat और lng पास किया है, तो Map Tiles API, खोज के लिए तय किए गए दायरे में मौजूद सबसे नज़दीकी पैनोरामा का मेटाडेटा दिखाता है.

निर्देशांकों का सेट और दायरा पास करना

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

पैनोरामा आईडी कुछ समय के लिए होते हैं. इसलिए, हमारा सुझाव है कि आप Street View के मेटाडेटा के शुरुआती अनुरोध में, निर्देशांकों का सेट और radius वैल्यू पास करें. उदाहरण के लिए, यहां दिया गया कोड स्निपेट देखें.

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 की किसी इमेज का panoId पास करें

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

मेटाडेटा रिस्पॉन्स

यहां दिया गया JSON कोड, मेटाडेटा के सामान्य रिस्पॉन्स का एक उदाहरण है.

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

यहां दी गई सूची में, रिस्पॉन्स बॉडी में मौजूद फ़ील्ड की परिभाषाएं दी गई हैं.

panoId
इस पैनोरामा का यूनीक आईडी. आपको पैनोरामा आईडी के मान्य होने पर भरोसा नहीं करना चाहिए. यह आईडी, उपयोगकर्ता के एक सेशन से ज़्यादा समय तक मान्य नहीं होता.
lat, lng
पैनोरामा के निर्देशांक (अक्षांश और देशांतर). ये वैल्यू, अनुरोध में पास किए गए निर्देशांकों से अलग हो सकती हैं. ऐसा इसलिए होता है, क्योंकि जगह की जानकारी, सबसे नज़दीकी पैनोरामा पर स्नैप हो जाती है.
imageHeight, imageWidth
जोड़ी गई पैनोरामा इमेज के डाइमेंशन.
tileHeight, tileWidth
पैनोरामा की एक टाइल के डाइमेंशन.
heading
कंपास की हेडिंग, जिसे उत्तर से घड़ी की सुई की दिशा में डिग्री में मापा जाता है. हेडिंग, [0,360] की रेंज में दिखाई जाती हैं. इसमें 0, उत्तर दिशा को दिखाता है.
tilt
पैनोरामा का झुकाव, पैनोरामा के दक्षिणी ध्रुव से क्षितिज तक डिग्री में मापा जाता है. नतीजे में मिली वैल्यू, [0, 180] की रेंज में होती हैं. 90 डिग्री की वैल्यू से पता चलता है कि हॉरिज़ॉन, पैनोरामा के इक्वेटर पर पहले से ही अलाइन है.
roll
हॉरिज़ॉन्टल लेवल को बराबर करने के लिए, पैनोरामा पर लागू की गई लाइन ऑफ़ साइट के चारों ओर घड़ी की सुई की दिशा में घुमाव. नतीजे में मिली वैल्यू, [0, 360] की रेंज में होती हैं.
imageryType
इससे इमेज के टाइप का पता चलता है. indoor और outdoor को वैल्यू के तौर पर इस्तेमाल किया जा सकता है.
date
इमेज लेने की तारीख. सभी इमेज में तारीख का डेटा नहीं होता. हालांकि, जब यह उपलब्ध होता है, तो इस फ़ील्ड में साल (YYYY) और महीने (MM) का कॉम्बिनेशन होता है. उदाहरण के लिए: 2023-05 या 2024.
copyright
कॉपीराइट टेक्स्ट, जिसे आपको Street View की इमेज के साथ एट्रिब्यूशन के तौर पर दिखाना होगा.
reportProblemLink
एक हाइपरलिंक, जिसका इस्तेमाल करके आपके उपयोगकर्ता, Street View की इस टाइल से जुड़ी समस्याओं की शिकायत कर सकते हैं. आपको यह हाइपरलिंक, इमेज के सबसे नीचे दाएं कोने में दिखाना होगा. साथ ही, इसमें लिंक टेक्स्ट शामिल होना चाहिए, जिसमें "इस इमेज से जुड़ी समस्या की शिकायत करें" जैसा कुछ लिखा हो.
addressComponent
स्ट्रक्चर्ड जियोकोड, जिसमें पैनोरामा के पते की जानकारी होती है. ज़्यादा जानकारी के लिए, Geocoding API के दस्तावेज़ में Geocoding के अनुरोध और जवाब देखें.
links
इस पैनोरामा से लिंक किए गए पैनोरामा आईडी की सूची. इसमें वह हेडिंग भी शामिल होती है जिस पर लिंक मौजूद होता है. उदाहरण के लिए, अगर हेडिंग 180° है, तो लिंक किया गया पैनोरामा, मौजूदा पैनोरामा के दक्षिण में है. ध्यान दें कि पैनोरामा आईडी कुछ समय के लिए ही उपलब्ध होते हैं. इसलिए, आपको एक से ज़्यादा उपयोगकर्ता सेशन के लिए इन पर भरोसा नहीं करना चाहिए.

Street View के थंबनेल

Street View की तस्वीरों का अनुरोध, thumbnail फ़ॉर्मैट में किया जा सकता है. थंबनेल, टाइल न की गई इमेज होती हैं. इनमें साइज़, हेडिंग, पिच, और फ़ील्ड ऑफ़ व्यू (कैमरे से दिख रहा व्यू) को उपयोगकर्ता तय करता है. थंबनेल इमेज का रिज़ॉल्यूशन, टाइल से कम होता है. साथ ही, इनका फ़ाइल साइज़ भी छोटा होता है. थंबनेल का अनुरोध करने के लिए, thumbnail एंडपॉइंट पर एक जीईटी अनुरोध भेजें. इसके बारे में यहां दिए गए कोड प्रोटोटाइप में बताया गया है.

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"

उदाहरण के लिए, यहां दिया गया कोड देखें. इसमें कनाडा के विसलर में ली गई Street View की तस्वीरों का थंबनेल डाउनलोड किया जाता है.

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

कनाडा के विसलर का Street View थंबनेल

ज़रूरी पैरामीटर

panoId
उस थंबनेल का यूनीक आईडी जिसे आपको सेट करना है. पैनोरामा आईडी की वैल्यू, panoIds एंडपॉइंट या metadata एंडपॉइंट से मिल सकती हैं. ये दोनों एंडपॉइंट, भौगोलिक निर्देशांक स्वीकार करते हैं और सही panoId दिखाते हैं.
session
एक मान्य सेशन टोकन.
key
आपका एपीआई पासकोड.

ज़रूरी नहीं पैरामीटर

height
पिक्सल में थंबनेल की ऊंचाई तय करता है. यह 16 पिक्सल से लेकर 250 पिक्सल तक हो सकती है. अगर आपने ऊंचाई की वैल्यू नहीं दी है, तो डिफ़ॉल्ट रूप से ऊंचाई की वैल्यू 250 पिक्सल पर सेट हो जाती है. यह ऊंचाई की ज़्यादा से ज़्यादा वैल्यू है. अगर आपने रेंज से बाहर की कोई वैल्यू तय की है, तो थंबनेल सबसे नज़दीकी मान्य वैल्यू पर स्नैप हो जाता है.
width
यह थंबनेल की चौड़ाई को पिक्सल में तय करता है. यह 16 पिक्सल से लेकर 600 पिक्सल तक हो सकती है. अगर आपने चौड़ाई तय नहीं की है, तो चौड़ाई डिफ़ॉल्ट रूप से 600 पिक्सल की ज़्यादा से ज़्यादा वैल्यू पर सेट हो जाती है. अगर आपने रेंज से बाहर की कोई वैल्यू तय की है, तो थंबनेल सबसे नज़दीकी मान्य वैल्यू पर स्नैप हो जाता है.
pitch
इससे वर्टिकल ऐक्सिस पर कैमरे का ऐंगल तय होता है. मान्य वैल्यू, -90 से 90 के बीच होनी चाहिए. इसमें ये भी शामिल हैं. डिफ़ॉल्ट वैल्यू 0 है.
yaw
हॉरिज़ॉन्टल ऐक्सिस के साथ कैमरे की दिशा तय करता है. मान्य वैल्यू, -360 से 360 (दोनों को शामिल करते हुए) के बीच होनी चाहिए. डिफ़ॉल्ट वैल्यू 0 है.
fov
इससे हॉरिज़ॉन्टल फ़ील्ड ऑफ़ व्यू (कैमरे से दिख रहा व्यू) के बारे में पता चलता है. इसे डिग्री में दिखाया जाता है. इसकी ज़्यादा से ज़्यादा वैल्यू 120 होती है. जब किसी तय साइज़ के व्यूपोर्ट का इस्तेमाल किया जाता है, जैसे कि तय साइज़ की Street View इमेज के साथ, तो फ़ील्ड ऑफ़ व्यू, ज़ूम को दिखाता है. इसमें छोटी वैल्यू, ज़ूम के ज़्यादा लेवल को दिखाती हैं. डिफ़ॉल्ट वैल्यू 90 होती है.

Street View की इमेज टाइल

panoId मिलने के बाद, Street View की इमेज टाइल का अनुरोध किया जा सकता है. टाइल के अनुरोध, एचटीटीपीएस जीईटी अनुरोध होते हैं. नीचे दिया गया उदाहरण देखें.

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

कोड के इस उदाहरण में, z ज़ूम करने का लेवल है. साथ ही, x और y, आपकी पसंद की Street View टाइल के टाइल कोऑर्डिनेट हैं. Street View पैनोरमा में ज़ूम करने का लेवल [0,5] की रेंज में होना चाहिए. इसमें 0, सबसे बड़े फ़ील्ड ऑफ़ व्यू (कैमरे से दिख रहा व्यू) को दिखाता है.

ज़ूम स्तर फ़ील्ड ऑफ़ व्यू (कैमरे से दिख रहा व्यू) का अनुमान
0 360°
1 180°
2 90°
3 45°
4 22.5°
5 11.25°

Street View टाइल के रिस्पॉन्स

Street View टाइल का अनुरोध पूरा होने पर, आपको उसी फ़ॉर्मैट और साइज़ की इमेज मिलती है जो आपने createSession के जवाब में बताया था.

टाइल जोड़ने का अनुरोध पूरा होने पर मिलने वाला नतीजा

ज़ूम करने का लेवल शून्य पर, पूरे पैनोरामा का साइज़ बदलकर tileWidth x tileHeight डाइमेंशन वाली टाइल में बदल दिया जाता है. पैनोरामा, x डाइमेंशन में बड़े होते हैं. इसलिए, टाइल में y डाइमेंशन में खाली जगह होगी:

ज़ूम करने का लेवल शून्य

ज़ूम करने के पांचवें लेवल पर, फ़ुल-साइज़ पैनोरामा का इस्तेमाल किया जाता है और उसे टाइल में बांटा जाता है.

आपको हर Street View पैनोरमा के साथ कॉपीराइट की जानकारी दिखानी होगी. दिखाई जाने वाली स्ट्रिंग, पैनोरामा के हिसाब से अलग-अलग हो सकती है. कॉपीराइट की जानकारी पाने के लिए, आपको Street View के मेटाडेटा का अनुरोध करना होगा. इसके बाद, रिस्पॉन्स के copyright फ़ील्ड को देखा जा सकता है. ज़्यादा जानकारी के लिए, डेटा एट्रिब्यूशन देखें.