রাস্তার দৃশ্য টাইলস

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA) ডেভেলপাররা

রাস্তার দৃশ্য টাইলসের উদাহরণ

স্ট্রিট ভিউ টাইলস 2D টাইলসের মতোই, তবে এতে রাস্তার স্তরে তোলা প্যানোরামিক চিত্রাবলী থাকে। স্ট্রিট ভিউ ব্যবহার করে, আপনি বিশ্বের ল্যান্ডমার্কগুলি অন্বেষণ করতে পারেন, প্রাকৃতিক বিস্ময় দেখতে পারেন এবং জাদুঘর, আখড়া, রেস্তোরাঁ বা ছোট ব্যবসার মতো জায়গাগুলির ভিতরে যেতে পারেন। এই API এন্ডপয়েন্ট আপনাকে এতে অ্যাক্সেস দেয়:

  • গুগল ম্যাপস স্ট্রিট ভিউ টাইলস
  • রাস্তার দৃশ্যের মেটাডেটা
  • রাস্তার দৃশ্যের থাম্বনেইল

আপনি রাস্তার স্তর থেকে তোলা ছবির টাইলগুলিকে একসাথে সেলাই করে বাস্তব জীবনের প্যানোরামিক প্রভাব তৈরি করতে পারেন। এবং আপনি একাধিক অবস্থানের (যেমন একটি রুট) জন্য 100টি পর্যন্ত প্যানোরামা আইডি অনুসন্ধান করতে পারেন এবং ক্যামেরার অবস্থান সম্পর্কে আরও গভীর মেটাডেটা পেতে পারেন।

স্ট্রিট ভিউ টাইলস একসাথে সেলাই করার জন্য একজন ভিউয়ারের প্রয়োজন। উদাহরণস্বরূপ, স্ট্রিট ভিউ কাস্টম প্যানোরামা ভিউয়ার।

একবার আপনার কাছে একটি API কী হয়ে গেলে, আপনি নিম্নলিখিত ধাপগুলি অনুসরণ করে রাস্তার দৃশ্যের চিত্রাবলী অ্যাক্সেস করতে পারবেন।

  1. একটি সেশন টোকেন পান। mapType এর মান streetview এ সেট করতে ভুলবেন না।

  2. এক বা একাধিক ভৌগোলিক অবস্থানের প্যানোরামা শনাক্তকারী (প্যানওআইডি) পেতে সেশন টোকেনটি ব্যবহার করুন।

  3. panoId সার্চ রেসপন্স থেকে প্যানোরামা আইডেন্টিফায়ার ব্যবহার করে নিম্নলিখিত তথ্য পান:

    1. রাস্তার দৃশ্যের মেটাডেটা । আপনি স্থানাঙ্কের একটি সেট এবং একটি ব্যাসার্ধ অতিক্রম করে রাস্তার দৃশ্যের মেটাডেটাও পেতে পারেন।

    2. রাস্তার দৃশ্যের থাম্বনেইল

    3. রাস্তার দৃশ্যের টাইলস

রাস্তার দৃশ্য পদ্ধতি

আপনি নিম্নলিখিত চারটি পদ্ধতির যেকোনো একটিতে কল করে রাস্তার দৃশ্যের চিত্র এবং মেটাডেটা অ্যাক্সেস করতে পারেন।

পদ্ধতি বিবরণ
https://tile.googleapis.com/v1/streetview/tiles পৃথক স্ট্রিট ভিউ টাইলস ফেরত পাঠায়। আপনি ছয়টি জুম স্তরে স্ট্রিট ভিউ টাইলস পুনরুদ্ধার করতে পারেন: ৫১২ পিক্সেল থেকে ১৩,৩১২ পিক্সেল পর্যন্ত।
https://tile.googleapis.com/v1/streetview/panoIds আপনাকে ১০০টি পর্যন্ত অবস্থানের জন্য বাল্ক অনুসন্ধান করতে দেয়। চিত্রাবলী সহ সমস্ত অবস্থানের জন্য প্যানোরামা আইডি ফেরত দেয়।
https://tile.googleapis.com/v1/streetview/thumbnail রাস্তার দৃশ্যের একটি থাম্বনেইল 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 অ্যারেতে কমপক্ষে একটি স্থানাঙ্ক মানের সেট থাকতে হবে, তবে আপনি আরও অন্তর্ভুক্ত করতে পারেন - সর্বোচ্চ ১০০টি পর্যন্ত।
radius
radius মান (মিটারে পরিমাপ করা) প্রদত্ত অবস্থানের চারপাশে বৃত্তের ব্যাসার্ধ নির্ধারণ করে, যেখানে প্যানোরামা অনুসন্ধান করা হবে। ডিফল্ট মান হল 50 মিটার।

প্যানোআইডি প্রতিক্রিয়া

ম্যাপ টাইলস API প্রতিটি অবস্থানের সবচেয়ে কাছের প্যানোরামা খুঁজে বের করার চেষ্টা করে এবং তারপর তাদের প্যানোরামা আইডিগুলি ফেরত দেয়। একটি সফল panoIds অনুরোধ একটি JSON অবজেক্ট ফেরত দেয় যাতে একটি panoIds অ্যারে থাকে। অ্যারেতে প্যানোরামা আইডিগুলির একটি তালিকা থাকে, যে ক্রমে আপনি তাদের অনুরোধ করেছেন। যদি ম্যাপ টাইলস API আপনার অনুরোধ করা অবস্থানগুলির জন্য কোনও প্যানোরামা খুঁজে না পায়, তাহলে অ্যারেতে সেই অবস্থানে একটি খালি স্ট্রিং ফেরত পাঠানো হয়। উদাহরণস্বরূপ, নিম্নলিখিত JSON কোডটি দেখুন।

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

আপনি panoIds ব্যবহার করে নিম্নলিখিত কাজগুলি করতে পারেন:

রাস্তার দৃশ্যের মেটাডেটা

স্ট্রিট ভিউ মেটাডেটা অনুরোধগুলি প্যানোরামা সম্পর্কে তথ্য পুনরুদ্ধার করে। স্ট্রিট ভিউ মেটাডেটা অনুরোধ হল একটি HTTPS GET অনুরোধ। আপনি দুটি উপায়ের একটিতে প্যানোরামা সম্পর্কে তথ্য পুনরুদ্ধার করতে পারেন:

  • যদি আপনি একটি 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"

যেহেতু প্যানোরামা আইডিগুলি ক্ষণস্থায়ী, তাই আমরা আপনাকে আপনার প্রাথমিক রাস্তার দৃশ্য মেটাডেটা অনুরোধে স্থানাঙ্কের একটি সেট এবং একটি 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"

রাস্তার দৃশ্যের ছবির প্যানোআইডিটি পাস করুন

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
রাস্তার দৃশ্য ছবির সাথে অ্যাট্রিবিউশন হিসেবে যে কপিরাইট টেক্সটটি আপনাকে প্রদর্শন করতে হবে।
reportProblemLink
এই রাস্তার দৃশ্য টাইলের সমস্যা রিপোর্ট করার জন্য আপনার ব্যবহারকারীদের জন্য একটি হাইপারলিঙ্ক। আপনাকে অবশ্যই এই হাইপারলিঙ্কটি ছবির নীচের ডানদিকের কোণায় প্রদর্শন করতে হবে এবং এতে "এই ছবিটির সমস্যা রিপোর্ট করুন" এর মতো লিঙ্ক টেক্সট থাকতে হবে।
addressComponent
একটি স্ট্রাকচার্ড জিওকোড যাতে প্যানোরামার ঠিকানা সম্পর্কে বিস্তারিত তথ্য থাকে। আরও তথ্যের জন্য, জিওকোডিং API ডকুমেন্টেশনে জিওকোডিং অনুরোধ এবং প্রতিক্রিয়া দেখুন।
links
এই আইডির সাথে লিঙ্ক করা প্যানোরামা আইডির একটি তালিকা। লিঙ্কটি যে শিরোনামে পাওয়া গেছে সেই শিরোনামটিও এতে রয়েছে। উদাহরণস্বরূপ, যদি শিরোনামটি 180° হয়, তাহলে লিঙ্ক করা প্যানোরামাটি বর্তমান প্যানোরামার দক্ষিণে অবস্থিত। মনে রাখবেন যে প্যানোরামা আইডিগুলির ক্ষণস্থায়ী প্রকৃতির কারণে, আপনার একক ব্যবহারকারীর সেশনের বেশি সময় ধরে এগুলির উপর নির্ভর করা উচিত নয়।

রাস্তার দৃশ্যের থাম্বনেইল

আপনি thumbnail ফর্ম্যাটে স্ট্রিট ভিউ ইমেজের জন্য অনুরোধ করতে পারেন। থাম্বনেইল হল টাইল্ডবিহীন ছবি যার আকার, শিরোনাম, পিচ এবং ভিউ ফিল্ড ব্যবহারকারী-নির্ধারিত। থাম্বনেইল ইমেজের রেজোলিউশন টাইলসের তুলনায় কম এবং ফাইলের আকার ছোট। আপনি thumbnail এন্ডপয়েন্টে একটি GET অনুরোধ পাঠিয়ে একটি থাম্বনেইল অনুরোধ করতে পারেন, যেমনটি নিম্নলিখিত কোড প্রোটোটাইপে দেখানো হয়েছে।

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"

নিম্নলিখিত কোড উদাহরণটি বিবেচনা করুন, যা কানাডার হুইসলারে তোলা স্ট্রিট ভিউ ছবির একটি থাম্বনেইল ডাউনলোড করে।

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

কানাডার হুইসলারের রাস্তার দৃশ্যের থাম্বনেইল

প্রয়োজনীয় পরামিতি

panoId
আপনার পছন্দের থাম্বনেইলের অনন্য আইডি। আপনি panoIds এন্ডপয়েন্ট থেকে অথবা metadata এন্ডপয়েন্ট থেকে প্যানোরামা আইডি মান পেতে পারেন — উভয়ই ভৌগোলিক স্থানাঙ্ক গ্রহণ করে এবং উপযুক্ত panoId ফেরত দেয়।
session
একটি বৈধ সেশন টোকেন
key
আপনার API কী

ঐচ্ছিক পরামিতি

height
থাম্বনেইলের উচ্চতা পিক্সেলে নির্দিষ্ট করে, ১৬ পিক্সেল থেকে ২৫০ পিক্সেল পর্যন্ত। যদি আপনি উচ্চতা নির্দিষ্ট না করেন, তাহলে উচ্চতা ডিফল্টভাবে সর্বোচ্চ অনুমোদিত মান ২৫০ পিক্সেল নির্ধারণ করে। যদি আপনি এমন একটি মান নির্দিষ্ট করেন যা সীমার বাইরে, তাহলে থাম্বনেইলটি নিকটতম বৈধ মানের দিকে চলে যায়
width
থাম্বনেইলের প্রস্থ পিক্সেলে নির্দিষ্ট করে, ১৬ পিক্সেল থেকে ৬০০ পিক্সেল পর্যন্ত। যদি আপনি প্রস্থ নির্দিষ্ট না করেন, তাহলে প্রস্থ ডিফল্টভাবে সর্বোচ্চ অনুমোদিত মান ৬০০ পিক্সেল হয়। যদি আপনি এমন একটি মান নির্দিষ্ট করেন যা সীমার বাইরে, তাহলে থাম্বনেইলটি নিকটতম বৈধ মানে চলে যায়
pitch
উল্লম্ব অক্ষ বরাবর ক্যামেরার কোণ নির্দিষ্ট করে। বৈধ মানগুলি -90 থেকে 90 (সমেত) পরিসরে। ডিফল্ট মান হল ০।
yaw
অনুভূমিক অক্ষ বরাবর ক্যামেরার দিক নির্দিষ্ট করে। বৈধ মানগুলি -360 থেকে 360 (সমেত) পরিসরে। ডিফল্ট মান s 0।
fov
ডিগ্রীতে প্রকাশ করা অনুভূমিক দৃশ্য ক্ষেত্র নির্দিষ্ট করে, যার সর্বোচ্চ মান ১২০। একটি নির্দিষ্ট আকারের ভিউপোর্টের সাথে কাজ করার সময়, যেমন একটি নির্দিষ্ট আকারের স্ট্রিট ভিউ চিত্রের ক্ষেত্রে, দৃশ্য ক্ষেত্র জুমকে প্রতিনিধিত্ব করে; যেখানে ছোট মানগুলি উচ্চ স্তরের জুমকে নির্দেশ করে। ডিফল্ট মান হল ৯০।

রাস্তার দৃশ্যের ছবির টাইলস

একবার আপনার একটি panoId হয়ে গেলে, আপনি একটি Street View ছবির টাইল অনুরোধ করতে পারেন। টাইল অনুরোধগুলি হল HTTPS GET অনুরোধ। নিম্নলিখিত উদাহরণটি বিবেচনা করুন।

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

এই কোড উদাহরণে, z হল জুম লেভেল, এবং x এবং y হল আপনার কাঙ্ক্ষিত স্ট্রিট ভিউ টাইলের টাইল স্থানাঙ্ক । স্ট্রিট ভিউ প্যানোরামাগুলিতে জুম লেভেল অবশ্যই [0,5] পরিসরে হতে হবে, যেখানে 0 হল সবচেয়ে প্রশস্ত দৃশ্যক্ষেত্রের প্রতিনিধিত্ব করে।

জুম লেভেল আনুমানিক দৃশ্য ক্ষেত্র
0 ৩৬০°
১৮০°
৯০°
৪৫°
২২.৫°
১১.২৫°

রাস্তার দৃশ্য টাইলসের প্রতিক্রিয়া

একটি সফল স্ট্রিট ভিউ টাইল অনুরোধ আপনার createSession প্রতিক্রিয়ায় নির্দিষ্ট করা ফর্ম্যাট এবং আকারের একটি ছবি ফেরত পাঠায়।

একটি সফল টাইল অনুরোধের ফলাফল

জুম লেভেল জিরোতে, সম্পূর্ণ প্যানোরামাটি tileWidth by tileHeight আকারের একটি টাইলে আকার পরিবর্তন করা হয়। যেহেতু প্যানোরামাগুলি x মাত্রায় বড়, তাই টাইলে y মাত্রায় খালি স্থান থাকবে:

জুম লেভেল শূন্য

জুম লেভেল ফাইভে, পূর্ণ-আকারের প্যানোরামা ব্যবহার করা হয় এবং টাইলসগুলিতে বিভক্ত করা হয়।

প্রতিটি স্ট্রিট ভিউ প্যানোরমার সাথে আপনাকে কপিরাইট তথ্য প্রদর্শন করতে হবে। প্রদর্শনের জন্য স্ট্রিংটি প্যানোরামার মধ্যে পরিবর্তিত হতে পারে। কপিরাইট তথ্য পেতে, আপনাকে স্ট্রিট ভিউ মেটাডেটা অনুরোধ করতে হবে, এবং তারপরে আপনি প্রতিক্রিয়ার copyright ক্ষেত্রটি উল্লেখ করতে পারেন। আরও তথ্যের জন্য, ডেটা অ্যাট্রিবিউশন দেখুন।