تقسيم الخريطة إلى وحدات مجزّأة هو ببساطة تقسيم العالم إلى شبكة مفهرَسة. ويتيح لك الوصول إلى بيانات الخرائط واستخدامها بكفاءة وديناميكية على مستويات رسم خرائط متعددة. تتيح لك Map Tiles API الوصول إلى مجموعة متنوعة من مجموعات البيانات الجغرافية الموضوعية، بما في ذلك ما يلي من إعداد Google:
وحدات صور خريطة الطريق المستندة إلى بيانات الارتفاعات المستندة إلى المتجهات مع تنسيقات المخططات البيانية من Google
الصور الفوتوغرافية المنظَّمة التي تم التقاطها بواسطة كلّ من كاميرات الأقمار الصناعية والكاميرات المحمولة جواً والتي تقدّم صورًا للأرض من الأعلى (النقطة السفلية من مركز الدائرة)
خرائط خطوط الكنتور التي تُظهر الظلّ
يتمّ تحديد مرجع جغرافي لكلّ مربّع من مربّعات الخريطة ثنائية الأبعاد ومواءمته مع بعضها. ويتم اختيارها استنادًا إلى النطاق الجغرافي لإطار العرض ومستوى التكبير. تتراوح مستويات التكبير/التصغير بين صفر (لعرض العالم بالكامل) و22 (لعرض الشوارع والأحياء).
مواضيع الخرائط
يمكنك الحصول على مربّعات خرائط لمظاهر الخرائط التالية.
مظهر الخريطة | الوصف |
---|---|
خارطة الطريق | الطرق والمباني والمعالم السياحية والحدود السياسية |
القمر الصناعي | صور فوتوغرافية تم التقاطها من الفضاء |
التضاريس | خريطة خطوط الارتفاع التي تعرض العناصر الطبيعية، مثل الغطاء النباتي |
لطلب شرائح الخريطة من Map Tiles API، عليك أولاً طلب
رمز مميّز للجلسة. يتتبّع رمز الجلسة
الحالة الحالية للخريطة ومساحة العرض. عند إعداد رمز جلسة
المرور، يجب ضبط قيمة mapType
لتتطابق مع مظهر الخريطة الذي تريده.
بعد ذلك، عليك تضمين رمز الجلسة في كل طلب ترسله إلى واجهة برمجة التطبيقات
Map Tiles API.
طلبات الحصول على معلومات عن إطار العرض
يحدّد إطار العرض حجم المربّع الذي يُشكّل إطارًا لمشهد العالم. تؤدي طلبات معلومات "مساحة العرض" إلى عرض تفاصيل عن مربّعات الخريطة التي تشكّل مساحة العرض الحالية. يُرجى طلب معلومات إطار العرض لضمان عدم طلب صور بمستويات تكبير غير متوفّرة.
على سبيل المثال، تتوفّر صور لمعظم المدن عند مستوى التكبير 22، ولكن ليس للمحيط لأنّه سيؤدي ذلك إلى عرض مربّعات زرقاء بدون أي تفاصيل.
طلب إطار العرض هو طلب HTTPS GET بالشكل التالي.
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
};
}