Maps JavaScript API নিম্নলিখিত কোঅর্ডিনেট সিস্টেম ব্যবহার করে:
- অক্ষাংশ ও দ্রাঘিমাংশের মান, যা অনন্যভাবে পৃথিবীর কোনও একটি বিন্দুকে রেফার করে। Google ওয়ার্ল্ড জিওডেটিক সিস্টেম WGS84 স্ট্যান্ডার্ড ব্যবহার করে।
- ওয়ার্ল্ড কোঅর্ডিনেট, যা ম্যাপের কোনও পয়েন্টকে অনন্যভাবে রেফার করে।
- পিক্সেল কোঅর্ডিনেট, যা নির্দিষ্ট জুম লেভেলে ম্যাপের নির্দিষ্ট পিক্সেলকে রেফার করে।
- টাইল কোঅর্ডিনেট, যা নির্দিষ্ট জুম লেভেলে ম্যাপের উপরে নির্দিষ্ট টাইলকে রেফার করে।
ওয়ার্ল্ড কোঅর্ডিনেট
API-কে যখনই বিশ্বের কোনও লোকেশনকে ম্যাপের কোনও লোকেশনে অনুবাদ করতে হয়, এটি প্রথমে অক্ষাংশ ও দ্রাঘিমাংশের মানকে বিশ্ব কোঅর্ডিনেটে অনুবাদ করে। এই ট্রান্সলেশন পারফর্ম করতে API মার্কেটর প্রোজেকশন ব্যবহার করে।
পিক্সেল কোঅর্ডিনেট (নিচে দেখুন) গণনা করার সুবিধার জন্য আমরা ধরে নিই যে জুম লেভেল ০-এ ম্যাপ হল বেস টাইলের সাইজের একটি সিঙ্গেল টাইল। তারপরে, আমরা জুম লেভেল ০-এ পিক্সেল কোঅর্ডিনেটের সাপেক্ষে ওয়ার্ল্ড কোঅর্ডিনেট নির্ধারণ করি। এর জন্য, এই বেস টাইলে অক্ষাংশ ও দ্রাঘিমাংশকে পিক্সেল পজিশনে কনভার্ট করতে প্রজেকশন ব্যবহার করি। এই ওয়ার্ল্ড কোঅর্ডিনেট হল একটি ফ্লোটিং পয়েন্ট ভ্যালু যা ম্যাপ প্রজেকশনের অরিজিন থেকে নির্দিষ্ট লোকেশন পর্যন্ত পরিমাপ করা হয়। মনে রাখবেন, এই ভ্যালু যেহেতু একটি ফ্লোটিং পয়েন্ট ভ্যালু, তাই এটি দেখানো ম্যাপ ইমেজের বর্তমান রেজোলিউশনের চেয়ে অনেক বেশি নিখুঁত হতে পারে। অন্যভাবে বলতে গেলে, ওয়ার্ল্ড কোঅর্ডিনেট বর্তমান জুম লেভেলের উপর নির্ভর করে না।
Google Maps-এ বিশ্ব কোঅর্ডিনেটগুলি মারকেটর
প্রোজেকশনের মূল বিন্দু (১৮০ ডিগ্রি
দ্রাঘিমাংশ এবং আনুমানিক ৮৫ ডিগ্রি অক্ষাংশে ম্যাপের উত্তর-পশ্চিম কোণ) থেকে পরিমাপ করা হয় এবং
x দিকে পূর্ব (ডান) দিকে এবং y দিকে দক্ষিণ (নিচে) দিকে
বৃদ্ধি পায়। কারণ, সাধারণ
মার্কেটর Google Maps টাইল হল ২৫৬ x ২৫৬ পিক্সেল, তাই ব্যবহারযোগ্য
ওয়ার্ল্ড কোঅর্ডিনেট স্পেস হল {0-256}, {0-256}।
![]()
মনে রাখবেন, মারকেটর প্রজেকশনের ক্ষেত্রে অনুদৈর্ঘ্য প্রস্থ সীমিত হলেও অক্ষাংশীয় উচ্চতা অসীম হয়। আমরা ফলাফলস্বরূপ ম্যাপের আকার বর্গাকার করতে, মারকেটর প্রজেকশন ব্যবহার করে বেস ম্যাপ ইমেজারি কাট-অফ করি, যা টাইল বেছে নেওয়ার জন্য সহজ লজিক প্রদান করে। মনে রাখবেন, আপনি যদি মেরুর খুব কাছাকাছি প্লট করেন, তাহলে একটি প্রজেকশন বেস ম্যাপের ব্যবহারযোগ্য কোঅর্ডিনেট স্পেসের বাইরে ওয়ার্ল্ড কোঅর্ডিনেট তৈরি করতে পারে।
পিক্সেল কোঅর্ডিনেট
পিক্সেল কোঅর্ডিনেট ম্যাপের কোনও নির্দিষ্ট পিক্সেলকে নির্দিষ্ট জুম লেভেলে রেফার করে, যেখানে ওয়ার্ল্ড কোঅর্ডিনেট কোনও প্রজেকশনে থাকা লোকেশনের অ্যাবসলিউট লোকেশনকে রিফ্লেক্ট করে। নিম্নলিখিত ফর্মুলা ব্যবহার করে পিক্সেল কোঅর্ডিনেট গণনা করা হয়:
pixelCoordinate = worldCoordinate * 2zoomLevel
উপরের সমীকরণ থেকে, মনে রাখবেন যে প্রতিটি ক্রমবর্ধমান জুম লেভেল
x এবং y
উভয় দিকে দ্বিগুণ বড়। তাই, প্রতিটি উচ্চতর জুম লেভেল আগের লেভেলের তুলনায় চার
গুণ বেশি রেজোলিউশন প্রদান করে। যেমন, জুম লেভেল ১-এ,
ম্যাপে ৪টি ২৫৬x২৫৬ পিক্সেল টাইল থাকে, এর ফলে পিক্সেল স্পেস
৫১২x৫১২ হয়। জুম লেভেল ১৯-এ, ম্যাপের প্রতিটি x ও y পিক্সেলকে
০ থেকে ২৫৬ * ২১৯-এর মধ্যে
কোনও ভ্যালু ব্যবহার করে রেফারেন্স করা যেতে পারে।
আমরা যেহেতু ম্যাপের টাইল সাইজের উপর ভিত্তি করে ওয়ার্ল্ড কোঅর্ডিনেট তৈরি করি, তাই পিক্সেল কোঅর্ডিনেটের ইন্টিজার পার্ট বর্তমান জুম লেভেলে সেই লোকেশনে থাকা সঠিক পিক্সেলকে শনাক্ত করার কাজ করে। মনে রাখবেন, জুম লেভেল ০-এর জন্য, পিক্সেল কোঅর্ডিনেট, ওয়ার্ল্ড কোঅর্ডিনেটের সমান হয়।
এইসব কোঅর্ডিনেট সিস্টেম ম্যাপের প্রতিটি লোকেশনকে প্রতিটি
জুম লেভেলে সঠিকভাবে চিহ্নিত করে। Maps JavaScript API, জুম লেভেল,
LatLng হিসেবে ম্যাপের কেন্দ্র এবং কন্টেনিং DOM এলিমেন্টের সাইজ
প্রদত্ত হলে ভিউপোর্ট তৈরি করে এবং এই বাউন্ডিং বক্সকে পিক্সেল কোঅর্ডিনেটে ট্রান্সলেট করে। API তারপরে প্রদত্ত পিক্সেল বাউন্ডের মধ্যে থাকা
সমস্ত ম্যাপ টাইল যৌক্তিকভাবে নির্ধারণ করে। আপনি টাইল কোঅর্ডিনেট ব্যবহার করে
এইসব ম্যাপ টাইল রেফারেন্স করেন, যা
ম্যাপের ছবি দেখানোর কাজকে অনেক সহজ করে দেয়।
টাইল কোঅর্ডিনেট
API, বেশি জুম লেভেলের জন্য সব ম্যাপের ছবি একসাথে লোড করতে পারে না। এর পরিবর্তে, এটি প্রতিটি জুম লেভেলে ছবিকে ম্যাপ টাইলের একটি সেটে ভেঙে দেয়, যা আপনার অ্যাপ্লিকেশন ব্যবহার করতে পারে এমন একটি ক্রমে যৌক্তিকভাবে সাজানো হয়। কোনও ম্যাপ নতুন লোকেশন বা নতুন জুম লেভেলে স্ক্রল করলে, API পিক্সেল কোঅর্ডিনেট ব্যবহার করে কোন টাইল প্রয়োজন তা নির্ধারণ করে এবং তারপরে সেইসব ভ্যালুকে টাইল সেট হিসেবে অনুবাদ করে যাতে সেগুলি পাওয়া যায়। এটি এমন একটি স্কিম ব্যবহার করে এইসব টাইল কোঅর্ডিনেট অ্যাসাইন করে যা কোনও প্রদত্ত পয়েন্টের জন্য কোন টাইলটিতে ছবি আছে তা নির্ধারণ করা সহজ করে তোলে।
Google Maps-এর টাইলগুলি পিক্সেলের মতো একই সোর্স থেকে নম্বর করা হয়।
Google-এর Mercator প্রজেকশনের প্রয়োগের জন্য, মূল
টাইল সবসময় ম্যাপের উত্তর-পশ্চিম কোণে থাকে।
x ভ্যালু পশ্চিম থেকে পূর্বে এবং y ভ্যালু উত্তর থেকে দক্ষিণে বৃদ্ধি পায়। সেই অরিজিন থেকে x,y কোঅর্ডিনেট ব্যবহার করে
টাইল ইন্ডেক্স করা হয়। যেমন, জুম লেভেল ২-এ, পৃথিবীকে ১৬টি টাইলে ভাগ করা হলে,
প্রতিটি টাইলের রেফারেন্স হিসেবে একটি অনন্য x,y পেয়ার ব্যবহার করা যেতে পারে:

মনে রাখবেন, পিক্সেল কোঅর্ডিনেটকে টাইলের সাইজ (২৫৬) দিয়ে ভাগ করে এবং ফলাফলের পূর্ণসংখ্যা অংশ নিলে, আপনি বাই-প্রোডাক্ট হিসেবে বর্তমান জুম লেভেলে টাইলের কোঅর্ডিনেট পাবেন।
উদাহরণ
নিচের উদাহরণে শিকাগো, ইলিনয়ের কোঅর্ডিনেট দেখানো হয়েছে: অক্ষাংশ/দ্রাঘিমাংশ ভ্যালু, ওয়ার্ল্ড কোঅর্ডিনেট, পিক্সেল কোঅর্ডিনেট ও টাইল কোঅর্ডিনেট। বিভিন্ন জুম লেভেলে কোঅর্ডিনেট ভ্যালু দেখতে জুম কন্ট্রোল ব্যবহার করুন।
কীভাবে কোঅর্ডিনেট গণনা করা হয়েছে তা দেখতে, কোড দেখুন।