أكثر

كيفية منع تكبير طبقة المتجه إذا كانت الطبقة الأساسية لا تسمح بمزيد من التكبير

كيفية منع تكبير طبقة المتجه إذا كانت الطبقة الأساسية لا تسمح بمزيد من التكبير


أنا أستخدم أنواعًا مختلفة من الطبقة الأساسية في OpenLayers وأرسم طبقات متجهة عليها. أواجه مشكلة مع طبقات قاعدة الأقمار الصناعية من Google.

لقد لاحظت أن عرض القمر الصناعي له مستويات تكبير مختلفة في أماكن مختلفة. في بعض الأماكن ، لا تقوم الطبقة الأساسية بالتكبير ولكن طبقة المتجه تقوم بالتكبير.

كيف يمكنني تحديد ما إذا كان مستوى التكبير / التصغير الأبعد متاحًا لطبقة أساسية معينة؟

في الصور أدناه ، تم تمييز الزاوية باللون الأحمر. لاحظ تغيير موضع طبقة المتجه

المتجه عند مستوى التكبير 19


نفس المتجه عند مستوى التكبير 20


هناك شيء واحد يمكنك القيام به إذا كان لديك طبقات أساسية ذات دقة مختلفة وهو اكتشاف الطبقة في ملفطبقة التغييررد الاتصال ثم إعادة تعيين مصفوفة دقة الخريطة ، وإعادة رسم عنصر تحكم panzoombar ، بحيث يمكن فقط تكبير دقة الطبقة الأساسية الجديدة.

map.events.register ("changebaselayer" ، هذه ، الوظيفة (obj) {if (obj.layer.name == 'your_layer_name') {map.baseLayer.resolutions = [20، 10، 5]؛ map.baseLayer.numZoomLevels = 3؛ map.baseLayer.fractionalZoom = false؛ map.baseLayer.maxResolution = 20؛ map.baseLayer.minResolution = 5؛ map.zoomTo (2، map.getCenter ())؛ panzoombar.redraw ()؛}}) ؛

بمعنى آخر ، يجب أن يكون لديك مصفوفات دقة مختلفة إذا كنت تستخدم طبقة ذات دقة وضوح مختلفة مسموح بها. يجب تحميلها مسبقًا في وقت التصميم ، حيث لا يمكنك بسهولة اكتشاف ما إذا كانت طبقة معينة تسمح بتكبير / تصغير معين من العميل.


شاهد الفيديو: تكبير حجم الخط وتكبير الشاشة وتكبير حجم الايقونات في الايفون