توفر واجهة برمجة تطبيقات JavaScript للخرائط عمليتين مختلفتين للخريطة: الخط النقطي والمتجه. يتم تحميل الخريطة النقطية تلقائيًا، وتحمّل الخريطة على شكل شبكة من مربّعات الصور النقطية المستندة إلى البكسل، والتي يتم إنشاؤها من جانب الخادم في "منصة خرائط Google"، ثم يتم عرضها في تطبيق الويب. تتكون خريطة المتجه
خريطة المتجه هي نفس خريطة Google التي اعتاد المستخدمون على استخدامها، وتقدم عددًا من المزايا على خريطة المربعات النقطية الافتراضية، وأبرزها حدة الصور المستندة إلى المتجه، وإضافة مبانٍ ثلاثية الأبعاد بمستويات التكبير/التصغير القريبة. كما تدعم خريطة المتجه بعض الميزات الجديدة، مثل القدرة على إضافة محتوى ثلاثي الأبعاد من خلال عرض تراكب WebGL، والتحكم في الإمالة الآلي والتوجيه في العنوان، والتحكم المحسن في الكاميرا، والتكبير الجزئي للحصول على تكبير أكثر سلاسة.
التحكّم في الكاميرا
استخدِم الدالة map.moveCamera()
لتحديث أي مجموعة من خصائص الكاميرا في الوقت نفسه. تقبل map.moveCamera()
معلَمة واحدة تحتوي على
جميع خصائص الكاميرا المطلوب تعديلها. يوضّح المثال التالي استدعاء
map.moveCamera()
لضبط center
وzoom
وheading
وtilt
في آنٍ واحد:
map.moveCamera({
center: new google.maps.LatLng(37.7893719, -122.3942),
zoom: 16,
heading: 320,
tilt: 47.5
});
يمكنك تحريك خصائص الكاميرا من خلال استدعاء map.moveCamera()
باستخدام حلقة صور متحركة، كما هو موضح هنا:
const degreesPerSecond = 3;
function animateCamera(time) {
// Update the heading, leave everything else as-is.
map.moveCamera({
heading: (time / 1000) * degreesPerSecond
});
requestAnimationFrame(animateCamera);
}
// Start the animation.
requestAnimationFrame(animateCamera);
تكبير/تصغير كسري
تدعم خرائط المتجهات التكبير الجزئي، والذي يتيح لك التكبير باستخدام قيم كسرية بدلاً من الأعداد الصحيحة. على الرغم من أن كلاً من خرائط المتجهات والخطوط النقطية تتيح التكبير الجزئي، يتم تشغيل التكبير/التصغير الجزئي بشكل افتراضي لخرائط المتجهات ويتم إيقافه افتراضيًا مع الخرائط النقطية. استخدِم خيار الخريطة isFractionalZoomEnabled
لتفعيل ميزة التكبير
التصغير الجزئي أو إيقافها.
يوضح المثال التالي تمكين التكبير/التصغير الجزئي عند تهيئة الخريطة:
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8,
isFractionalZoomEnabled: true
});
يمكنك أيضًا تفعيل ميزة التكبير الجزئي أو إيقافها من خلال ضبط خيار الخريطة isFractionalZoomEnabled
كما هو موضّح هنا:
// Using map.set
map.set('isFractionalZoomEnabled', true);
// Using map.setOptions
map.setOptions({isFractionalZoomEnabled: true});
يمكنك ضبط أداة معالجة الحدث لرصد ما إذا كانت ميزة "تكبير كسري" مفعّلة، وهذا الإجراء أكثر إفادة إذا لم تضبط isFractionalZoomEnabled
صراحةً على true
أو false
. يتحقق المثال التالي من الرمز لمعرفة ما إذا تم تفعيل ميزة "تكبير كسري":
map.addListener('isfractionalzoomenabled_changed', () => {
const isFractionalZoomEnabled = map.get('isFractionalZoomEnabled');
if (isFractionalZoomEnabled === false) {
console.log('not using fractional zoom');
} else if (isFractionalZoomEnabled === true) {
console.log('using fractional zoom');
} else {
console.log('map not done initializing yet');
}
});