تُقسّم Map Tiles العالم ببساطة إلى شبكة مفهرسة
تتيح لك هذه الميزة الوصول إلى بيانات الخرائط واستخدامها بكفاءة وديناميكية
على نطاقات رسم خرائط متعدّدة. تمنحك Map Tiles API إمكانية الوصول إلى
مجموعات بيانات جغرافية متعددة المواضيع، بما في ذلك مجموعات البيانات التي تنظّمها Google:
مربّعات صور خرائط الطرق استنادًا إلى بيانات طبوغرافية متجهة مع تنسيق رسم الخرائط من Google
صور متعامدة تم التقاطها بواسطة الكاميرات المحمولة جوًا والأقمار الصناعية التي تقدّم صورًا من أعلى إلى أسفل (نظير) للأرض
خرائط الكنتور المظلّلة
تتم الإشارة جغرافيًا إلى جميع مربّعات Map Tiles الثنائية الأبعاد ومحاذاتها مع بعضها البعض. ويتم اختيارها استنادًا إلى النطاق الجغرافي لإطار العرض ومستوى التكبير/التصغير. تتراوح مستويات التكبير/التصغير من صفر (لعرض العالم بأكمله) إلى 22 (لعرض الشوارع والمربّعات السكنية).
مظاهر الخرائط
يمكنك الحصول على مربّعات Map Tiles لمظاهر الخرائط التالية.
| مظهر الخريطة | الوصف |
|---|---|
| خريطة الطرق | الطرق والمباني والمعالم والحدود السياسية |
| القمر الصناعي | صور فوتوغرافية تم التقاطها من الفضاء |
| التضاريس | خريطة كنتور تعرض المظاهر الطبيعية، مثل النباتات |
لطلب مربّعات Map Tiles من Map Tiles API، عليك أولاً طلب
رمز مميّز للجلسة. يتتبّع الرمز المميّز للجلسة الحالة الحالية لخريطتك وإطار العرض. عند إعداد الرمز المميّز للجلسة، عليك ضبط قيمة mapType لتتطابق مع مظهر الخريطة الذي تريده.
بعد ذلك، عليك تضمين الرمز المميّز للجلسة في كل طلب ترسله إلى Map Tiles API.
طلبات معلومات إطار العرض
يحدّد إطار العرض حجم المربّع الذي يحيط بمشهد العالم. تعرض طلبات معلومات إطار العرض تفاصيل حول مربّعات Map Tiles التي تشكّل إطار العرض الحالي. إنّ سبب طلب معلومات إطار العرض هو التأكّد من تجنُّب طلب الصور بمستويات تكبير/تصغير غير متوفّرة.
على سبيل المثال، تتوفّر صور لمعظم المدن بمستوى التكبير/التصغير 22، ولكن لا تتوفّر للمحيط لأنّه سيؤدي إلى عرض مربّعات زرقاء بلا ملامح.
طلب إطار العرض هو طلب GET بتنسيق HTTPS التالي.
curl "https://tile.googleapis.com/tile/v1/viewport?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &zoom=zoom &north=north &south=south &east=east &west=west"
يحتوي الطلب على الحقول التالية:
zoom- مستوى التكبير/التصغير لإطار العرض
northوsouthوeastوwest- أقصى النقاط في الشمال والجنوب والشرق والغرب في إطار العرض، معبّر عنها بالدرجات يجب أن يكون الشمال والجنوب في النطاق (-90,90)، والشرق والغرب في النطاق (-180, 180). للتعبير عن الحدود التي تعبر خط الزوال المعاكس، يمكن أن يكون الغرب موجبًا (على سبيل المثال، 170) والشرق سالبًا (على سبيل المثال، -170). جميع المَعلمات مطلوبة.
ردود معلومات إطار العرض
يخبرك ردّ إطار العرض بالمناطق التي تتضمّن صورًا ومستويات التكبير/التصغير التي تتوفّر بها. يتخذ ردّ معلومات إطار العرض الشكل التالي.
{
"copyright": "Map data ©2023",
"maxZoomRects": [
{
"maxZoom": 19,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 9,
"north": 90,
"south": -90,
"east": 180,
"west": -180
},
{
"maxZoom": 14,
"north": 84.375,
"south": -84.375,
"east": 180,
"west": -180
}, ...
]
}
يحتوي نص الردّ على الحقول التالية.
copyright- يحتوي على سلسلة إسناد يجب عرضها على خريطتك عند عرض مربّعات خرائط الطرق والقمر الصناعي لمزيد من المعلومات، يُرجى الاطّلاع على سياسات Map Tiles API.
maxZoomRect- يحتوي على مصفوفة من المستطيلات المحيطة التي تتداخل مع إطار العرض الحالي. يحتوي أيضًا على مستوى التكبير/التصغير الأقصى المتاح ضمن كل مستطيل.
دوالّ إحداثيات المربّعات
تتوفّر أدوات (دوالّ بسيطة) في معظم لغات البرمجة للتحويل من أزواج خطوط الطول/العرض إلى إحداثيات المربّعات بمستوى تكبير/تصغير معيّن.
ضَع في اعتبارك مثال رمز JavaScript التالي الذي يحوّل أولاً من latLng إلى نقطة، ثم من نقطة إلى إحداثيات المربّعات.
var TILE_SIZE = 256;
function fromLatLngToPoint(latLng) {
var mercator = -Math.log(Math.tan((0.25 + latLng.lat() / 360) * Math.PI));
return {
x: TILE_SIZE * (latLng.lng() / 360 + 0.5),
y: TILE_SIZE / 2 * (1 + mercator / Math.PI)
};
}
function fromLatLngToTileCoord(latLng, zoom) {
var point = fromLatLngToPoint(latLng);
var scale = Math.pow(2, zoom);
return {
x: Math.floor(point.x * scale / TILE_SIZE),
y: Math.floor(point.y * scale / TILE_SIZE),
z: zoom
};
}