عند تصدير FeatureCollection
كأحد مواد عرض FeatureView
، يمكنك ضبط مَعلمات تمنح الأولوية للعناصر التي يتم عرضها عند
مستوى تكبير معيّن (تخفيف الكثافة) وطريقة ترتيب العناصر المتداخلة (الترتيب حسب المستوى z).
تؤثر هذه الإعدادات
في سرعة عناصر FeatureView
وخصائص عرضها. تصف الأقسام التالية مَعلمات التحسين وتوضّح أثرها باستخدام المخططات المفاهيمية التي يتم فيها تحديد مربّعات الخريطة باستخدام خطوط متقطعة، والعناصر المرئية هي مضلّعات بخطوط صلبة، والعناصر التي تم تجاهلها (تخفيفها) هي مضلّعات بخطوط متقطعة بدون تعبئة.
تمثل مجموعة الرموز البرمجية التالية مثالاً على عملية تصدير من FeatureCollection
إلى FeatureView
تسلّط الضوء على مَعلمات التحسين الموضّحة في هذه الصفحة.
Export.table.toFeatureView({
collection: fooFc,
assetId: 'foo-featureview-demo',
description: 'foo-featureview-demo',
maxFeaturesPerTile: 1500,
thinningStrategy: 'HIGHER_DENSITY',
thinningRanking: ['my-property DESC'],
zOrderRanking: ['my-property DESC']
});
الحد الأقصى لعدد الميزات لكل مربّع
تحدِّد مَعلمة الحد الأقصى لعدد العناصر لكل مربّع (maxFeaturesPerTile
)
الحد الأقصى لعدد العناصر التي سيتم عرضها في مربّع خريطة واحد. هذه القيمة هي
الحدّ الأقصى، وقد تكون أقلّ بكثير استنادًا إلى
استراتيجية التخفيف. يمكن ضبط هذه القيمة على أي قيمة بين 1 و2000. تعرِض القيم الأعلى المزيد من الميزات لكل مربّع، ولكن يستغرق تحميل المربّعات
وقتًا أطول.
يُرجى ملاحظة أنّه في الجدول التالي، مع انخفاض قيمة المَعلمة maxFeaturesPerTile
، ينخفض أيضًا عدد العناصر التي تتقاطع مع كل مربّع من مربّعات الخريطة. يمكن أن يتضمّن المربّع عددًا أقل من الحد الأقصى، ولكن ليس أكثر.
جميع الميزات (للرجوع إليها) |
لا تعرض أكثر من 5 عناصر لكل مربّع. |
لا تعرض أكثر من عنصرَين لكل مربّع. |
ترتيب المحتوى الذي يقلّ عدد مشاهديه
تتحكم مَعلمة ترتيب التخفيف (thinningRanking
) في كيفية تحديد أولوية إزالة البيانات استنادًا إلى نوع الأشكال الهندسية وحجم العناصر وقيم سمات العناصر. يقبل هذا الخيار مجموعة من القواعد التي تُعلم خوارزمية التخفيف
بالسمات التي يجب تخفيف كثافتها قبل غيرها عند الوصول إلى قيمة
maxFeaturesPerTile
. تتضمّن كل قاعدة
سمة
موقع متبوعة باتجاه الترتيب
(تصاعدي/ASC
أو تنازلي/DESC
)، ويمكن أن تكون هناك قاعدة واحدة أو أكثر. بالإضافة إلى
سمات العناصر التقليدية، هناك سمتان خاصتان يمكن
استخدامهما لتحديد أولوية التخفيف: .geometryType
و.minZoomLevel
.
-
.geometryType
: يحدِّد العناصر على أنّها نقاط أو خطوط أو مضلّعات. يتم قياس أنواع الأشكال الهندسية هذه على التوالي على أنّها صغيرة ومتوسطة وكبيرة لغرض الترتيب. -
.minZoomLevel
: أدنى مستوى تكبير/تصغير للخريطة يمكن أن يتم فيه عرض ميزة على شكل مربّع. ولن يتم عرض العنصر في مستويات التكبير أو التصغير التي تقل عن هذه القيمة، وقد يتم عرض العنصر في مستويات التكبير أو التصغير التي تزيد عن هذه القيمة أو تساويها. تذكَّر أنّ مستويات التكبير/التصغير المنخفضة تمثّل منطقة جغرافية أكبر لكل مربّع خريطة مقارنةً بمستويات التكبير/التصغير الأعلى. يتمّ منح العناصر النقطية قيمة 0 (مرئية في جميع مستويات التصغير والتكبير). يتمّ منح قيم هندسات الخطوط والمضلّعات استنادًا إلى حدودها (الخطوط) أو مساحتها (المضلّعات): تكون قيم.minZoomLevel
للعناصر الكبيرة أقلّ من قيم العناصر الأصغر.
يمكن تقديم قواعد تخفيف الترتيب إما كسلسلة أو قائمة بسلاسل، حيث يتم فصل اسم الموقع واتجاه الفرز المطلوب بمسافة:
// String input format for setting thinning ranking based on 3 rules.
'my-property DESC, .geometryType ASC, .minZoomLevel ASC'
// List of strings input format for setting thinning ranking based on 3 rules.
['my-property DESC', '.geometryType ASC', '.minZoomLevel ASC']
توجّه القواعد أعلاه خوارزمية التخفيف لمنح الأولوية للكيانات التي تحتوي على سمة "my-property" أكبر (تخفيف الكيانات التي تحتوي على قيمة "my-property" أصغر أولاً)، ومنح الأولوية للكيانات التي تحتوي على نوع شكل أصغر (مثل تخفيف المضلّعات قبل الخطوط والخطوط قبل النقاط)، ومنح الأولوية للكيانات التي تحتوي على الحد الأدنى الأصغر لتكبير/تصغير الخريطة (النقاط قبل المضلّعات الكبيرة قبل المضلّعات الصغيرة).
يوضّح الجدول التالي كيفية تأثير تغيير قاعدة thinningRanking
لموقع
size
في العناصر التي يتمّ رسمها. إجمالي عدد
العناصر لكل مربّع (عمود "كل العناصر") أكبر من 5، لذلك يتم تخفيف
العناصر المرسومة
(عمود thinningRanking: 5
). في الصف الأول، يتم ترتيب العناصر
حسب size
من الأكبر إلى الأصغر، ما يعني أنّ العناصر الأكبر حجمًا تحظى
بأولوية على العناصر الأصغر حجمًا (يتم رسم العناصر بترتيب تنازلي حسب الحجم
إلى أن يتم الوصول إلى maxFeaturesPerTile
). في الصف الثاني، يتم ترتيب العناصر
حسب الحجم بترتيب تصاعدي، وبالتالي يتم رسم العناصر الأصغر أولاً، بترتيب
الحجم، إلى أن يتم الوصول إلى maxFeaturesPerTile
.
thinningRanking |
جميع الميزات (للرجوع إليها) | maxFeaturesPerTile: 5 |
---|---|---|
امنح الأولوية للعناصر التي تحتوي على قيمة أكبر من |
||
تحديد أولوية الميزات التي تحتوي على |
استراتيجية التخفيف
يتم استخدام مَعلمة استراتيجية التخفيف (thinningStrategy
) إلى جانب
ترتيب التخفيف (thinningRanking
) لتخفيف البيانات في
وقت التصدير لتحسين أداء العرض. هناك استراتيجيتان متوفقتان: HIGHER_DENSITY
وGLOBALLY_CONSISTENT
. عند التخفيف عند
مستوى تكبير معيّن، تعني استراتيجية التخفيف ذات الكثافة الأعلى أنّه يمكن لكل
شريحة أن تقترب قدر الإمكان من الحدّ الأقصى
maxFeaturesPerTile
بدون مراعاة ترتيب
العناصر في الشرائح الأخرى. تعني استراتيجية التخفيف المتّسقة على مستوى العالم أنّه
إذا تمت إزالة ميزة من خلال التخفيف من أي مربّع، ستتم إزالة جميع الميزات التي لها ترتيب تخفيف متساوٍ أو أقل من جميع المربّعات،
بغض النظر عمّا إذا كان المربّع يتطلّب التخفيف (يتجاوز الحدّ الأقصى maxFeaturesPerTile
). استخدِم استراتيجية HIGHER_DENSITY
لتحسين كثافة العناصر
واستخدِم استراتيجية GLOBALLY_CONSISTENT
لتحسين تمثيل رتبة العناصر بشكلٍ متّسق بين المربّعات.
يوضّح الجدول التالي كيفية تأثير تغيير thinningStrategy
في
التخفيف. في هذا المثال، يتم تقليل كثافة البيانات باستخدام شكل/لون
النقاط. تتضمّن الدوائر الزرقاء والمربّعات الخضراء والمثلثات الحمراء ترتيبات انحسار متسلسلة من الأفضل إلى الأسوأ. لكل
thinningStrategy
(HIGHER_DENSITY
وGLOBALLY_CONSISTENT
)،
تتوفّر ثلاث قيم مختلفة لسمة maxFeaturesPerTile
: عدد
كبير بما يكفي لعرض جميع الميزات، و10 ميزات، و9 ميزات.
عند ضبط القيمة HIGHER_DENSITY
و10 maxFeaturesPerTile
، يتم تقليل عدد المثلثات الحمراء الستة (أدنى كثافة في ترتيب التخفيف) في المربّع العلوي الأيمن، ويتم تقليل عدد المثلثات الحمراء الفردية في المربّع السفلي الأيمن. باستخدام HIGHER_DENSITY
و9
maxFeaturesPerTile
، يتم تخفيف 7 مثلثات حمراء من المربّع العلوي الأيمن،
ويتم تخفيف مثلث أحمر ومربّع أخضر من المربّع السفلي الأيمن.
في هذه الأمثلة، يتم تقليل كثافة كل مربّع بشكل مستقل، بدون مراعاة
ترتيب تقليل كثافة العناصر في المربّعات المجاورة. استنادًا إلى
سمات البيانات، يمكن أن تؤدي استراتيجية التخفيف هذه إلى ظهور وحدات أساسية مجاورة للخريطة
تختلف عن بعضها بوضوح، ولكنّها تحقّق الحد الأقصى من
عدد العناصر المرسومة.
تذكَّر أنّ GLOBALLY_CONSISTENT
التخفيف يعني أنّه في حال إزالة ميزة
من خلال التخفيف من أي مربّع، ستتم أيضًا إزالة جميع الميزات الأخرى التي تبلغ قيمتها
thinningRank
متساوية أو أسوأ. عند ضبط قيمة
maxFeaturesPerTile
على 10، لا تظهر المثلثات الحمراء على أي مربّع
لأنّ المثلث الأحمر يتم تخفيف كثافته في مربّعَي أعلى يمين الشاشة وأسفل يمينها.
عند ضبط maxFeaturesPerTile
على 9، لا تظهر المربّعات الخضراء بالمثل
في أي مربّع لأنّ المربّع الأخضر يتم تخفيف كثافته في المربّع الأيمن أسفل الشاشة.
من غير المرجّح أن تؤدي استراتيجية التخفيف هذه إلى اتّباع مظهر الفسيفساء المميّز الذي يمكن أن تتّبعه استراتيجية HIGHER_DENSITY
، ولكن يمكن أن تؤدي إلى تخفيف الفسيفساء إلى عدد من الميزات أقل بكثير من الحدّ الأقصى maxFeaturesPerTile
.
thinningStrategy |
جميع الميزات (للرجوع إليها) | maxFeaturesPerTile: 10 | maxFeaturesPerTile: 9 |
---|---|---|---|
إزالة شعر أقلّ كثافة الحفاظ على كثافة عالية للعناصر من خلال تقليل المساحة داخل المربّع |
|||
تخفيف أكثر كثافة الحفاظ على الحد الأدنى من ترتيب التخفيف بشكلٍ متّسق على مستوى العالم من خلال التخفيف بين العناصر |
ترتيب "الترتيب حسب العمق"
تتحكّم مَعلمة ترتيب z-order (zOrderRanking
) في ترتيب
العناصر المتداخلة. ويقبل هذا الإجراء مجموعة من القواعد التي تحدّد الميزات التي
يجب أن تظهر تحت أو فوق الميزات الأخرى عند تداخلها. منطق القاعدة وتنسيقها
لضبط ترتيب العناصر هو نفسه
ترتيب التخفيف، يُرجى الاطّلاع على هذا القسم لمزيد من
التفاصيل.
يمكن تقديم قواعد ترتيب "الترتيب حسب العمق" إما كسلسلة أو قائمة سلاسل، حيث يتم فصل اسم السمة واتجاه الترتيب المطلوب بمسافة:
// String input format for setting z-order ranking based on 3 rules.
'my-property DESC, .geometryType ASC, .minZoomLevel ASC'
// List of strings input format for setting z-order ranking based on 3 rules.
['my-property DESC', '.geometryType ASC', '.minZoomLevel ASC']
تحدّد القواعد أعلاه أنّه يجب أن تظهر العناصر التي تحتوي على قيمة أكبر لسمة my-property تحت العناصر التي تحتوي على قيمة أصغر، وأن تظهر العناصر التي تحتوي على نوع شكل هندسي أصغر تحت العناصر التي تحتوي على نوع شكل هندسي أكبر (على سبيل المثال، النقاط تحت الخطوط والخطوط تحت المضلّعات)، وأن تظهر العناصر التي تحتوي على الحد الأدنى الأصغر للتكبير (العناصر الأكبر حجمًا) تحت العناصر التي تحتوي على الحد الأدنى الأكبر للتكبير (العناصر الأصغر حجمًا).
يوضّح الجدول التالي كيفية تأثير تغيير قاعدة zOrderRanking
لسمة
"الحجم" في الميزات التي تظهر أمام الميزات الأخرى عند
تداخلها. في الصف الأول، يتم ترتيب العناصر حسب الحجم بترتيب تنازلي،
ما يعني أنّ العناصر الأكبر حجمًا ستظهر أسفل العناصر الأصغر حجمًا
(يتم رسم العناصر الأكبر حجمًا أولاً). في المقابل، في الصف الثاني، يتم ترتيب العناصر
حسب الحجم بترتيب تصاعدي، ما يعني أنّ العناصر الأصغر حجمًا
يجب أن تظهر تحت العناصر الأكبر حجمًا (يتم رسم العناصر الأصغر حجمًا أولاً).
تظهر الميزات التي تحتوي على |
تظهر الميزات التي تحتوي على |