تصميم FeatureView

يتم تحديد نمط العناصر في مادة عرض FeatureView باستخدام قواعد يتم تعريفها في كائن JavaScript. يمكن ضبط النمط أثناء التعريف الأولي لملف FeatureViewLayer أو في أي وقت لاحق. يتيح لك نظام التصميم ضبط قواعد أسلوب عامة تنطبق على مجموعات كبيرة من الميزات، بالإضافة إلى قواعد أكثر تحديدًا لميزات معيّنة. يمكن تحديد نمط العنصر باستخدام قيم ثابتة أو بيانات مستندة إلى خصائص العنصر.

عنصر النمط

في ما يلي البنية الأساسية لعنصر النمط. هناك نوعان من القواعد: القواعد العامة والقواعد المحدّدة. تؤثر القواعد العامة في جميع الميزات في مادة عرض FeatureView، في حين تؤثر القواعد المحدّدة في مجموعة فرعية من الميزات.

{
  // Broad style rules.
  opacity: ,
  polygonFillColor: ,

  // Specific style rules.
  rules: [
    {  },
    {  }
  ]
};

القواعد العامة

لتطبيق سمات النمط على جميع العناصر (أو تلك التي تنتمي إلى نوع محدد من الأشكال الهندسية)، حدِّد سمات النمط في المستوى الأعلى في كائن النمط.

{
  opacity: 0.5,
  pointShape: 'triangle',
  lineWidth: 10,
  polygonFillColor: 'green'
};

قواعد محدّدة

لتطبيق سمات الأنماط على مجموعة فرعية من العناصر، استخدِم الحقل rules. يقبل الحقل rules قائمة بعناصر JavaScript، وكلّ منها يتضمّن filter الذي يختار الميزات وفقًا للشروط التي يحدّدها عنصر ee.Filter، followed by a series of style properties. يلي ذلك سلسلة من سمات الأنماط. في المثال أدناه، توجد قاعدة تضبط polygonStrokeWidth وpolygonFillColor فقط إذا كان السمة "REP_AREA" أقل من 100. تلغي القواعد المحدّدة خصائص النمط للقواعد العامة، وتلغي القواعد القريبة من نهاية قائمة rules القواعد القريبة من البداية (يتم تقييم القواعد المحدّدة من الأولى إلى الأخيرة).

{
  rules: [
    {
      filter: ee.Filter.lt('REP_AREA', 100),
      polygonStrokeWidth: 0.5,
      polygonFillColor: 'blue'
    },
    {  }  // Optionally include additional rules.
  ]
};

نمط الإعداد

يمكن ضبط نمط العنصر عند تعريف FeatureViewLayer أو في أي وقت لاحق.

بيان FeatureViewLayer

لضبط مَعلمات العرض المركّز عند الإعلان عن FeatureViewLayer، استخدِم المَعلمة visParams.

var visParams = {
  opacity: 0.5,
  lineWidth: 10,
  polygonFillColor: 'purple'
};

var layer = ui.Map.FeatureViewLayer({
  assetId: 'WCMC/WDPA/current/polygons_FeatureView',
  visParams: visParams
});

Map.add(layer);

FeatureViewLayer الحالية

لضبط مَعلمات العرض المرئي لعنصر FeatureViewLayer حالي، استخدِم دالة setVisParams. ويحلّ محلّ أيّ قواعد نمط محدّدة سابقًا، ويُعاد ضبط السمات غير المحدّدة على قيمها التلقائية.

var layer = ui.Map.FeatureViewLayer('WCMC/WDPA/current/polygons_FeatureView');
Map.add(layer);

layer.setVisParams({
  opacity: 0.5,
  lineWidth: 10,
  polygonFillColor: 'purple'
});

التعبير بالرموز

لكلّ سمة نمط، يمكنك تحديد قاعدة نمط ثابتة أو قاعدة نمط مستندة إلى البيانات. يستخدم الخيار المستنِد إلى البيانات قيم سمات العناصر لتحديد الترميز، والذي يمكن أن يكون تصنيفيًا أو متداخلًا. للحصول على قائمة كاملة بخصائص الأنماط، اطّلِع على جدول خصائص الأنماط.

ثابت

تتألّف قاعدة نمط ثابت من خاصية نمط يتم ضبطها وقيمتها. يضبط المثال التالي لون تعبئة المضلع على الأزرق.

var visParams = {
  polygonFillColor: 'blue'
};

تصنيفية

تتألّف قاعدة الطراز الفئوي من سمة نمط يتم ضبطها وكائن JavaScript يتضمّن ثلاث سمات:

  • property: اسم سمة ميزة ستؤثّر قيمته في الأسلوب.
  • categories: قائمة بالقوائم التي تربط قيم سمات العناصر بسمات رموز الأنماط تتضمّن كل فئة قيمة خاصية متبوعة بقيمة للترميز المطلوب تطبيقها. يجب أن تكون قيمة السمة التي تحدّد فئة سلسلة.
  • defaultValue: رمزية تلقائية لتطبيقها على العناصر التي لم يتم تحديد قيمة ملفّها الشخصي في categories. إذا كان القيمة خالية أو غير محدّدة، سيتم تطبيق إعدادات النمط التلقائية.

على سبيل المثال، يضبط العنصر التالي سمة النمط color استنادًا إلى سمة العنصر "MARINE". يتم ضبط العناصر في الفئة "MARINE" "0" على أنّها أرجوانية، و"1" على أنّها خضراء، و"2" على أنّها زرقاء، وأي فئة أخرى على أنّها بيضاء.

var visParams = {
  color: {
    property: 'MARINE',
    categories: [
      ['0', 'purple'],
      ['1', 'green'],
      ['2', 'blue']
    ],
    defaultValue: 'white'
  }
};

تمّ احتساب معدل التغير في الصور المتحركة

تتألّف قاعدة النمط المُشفَّر من سمة نمط يتم ضبطها وكائن JavaScript يتضمّن ما يصل إلى خمس سمات:

  • property: اسم سمة ميزة ستؤثّر قيمته في الأسلوب.
  • mode: وضع الاستقراء الداخلي، إما 'linear' أو 'interval'.
  • palette: قائمة بالألوان أو الشفافيات أو العروض لتضمين قيم السمات المدرَجة بين القيم يعتمد التنسيق على mode، يُرجى الاطّلاع على القسمَين خطي والفاصل للحصول على مزيد من التفاصيل.

ينطبق هذا الإعداد على "وضع 'linear'" فقط

  • min: قيمة السمة المطلوب ربطها بالعنصر الأول في قائمة palette.
  • max: قيمة السمة المطلوب ربطها بالعنصر الأخير في قائمة palette.

المساواة بين نقاط الاتصال

يضبط وضع الاستقراء الداخلي الخطي خاصية نمط العناصر من خلال ربط قيم الإدخال في النطاق min إلى max بشكل خطي بين قائمة بقيم الرموز المحدّدة في السمة palette. يتم ضبط قيم الإدخال على النطاق الذي تم ضبطه باستخدام min وmax.

على سبيل المثال، يضبط العنصر التالي سمة color style استنادًا إلى سمة العنصر "REP_AREA". السمة palette هي قائمة بألوان تشير إلى أنّ قيم الإدخال بين min وmax يجب أن تتغيّر بشكل خطي من الأصفر إلى الأحمر إلى الأزرق. يتمّ الاستقراء بين القيم التي تتراوح بين 1 و500 بين الأصفر والأحمر، ويتمّ الاستقراء بين القيم التي تتراوح بين 500 و1, 000 بين الأحمر والأزرق.

var visParams = {
  color: {
    property: 'REP_AREA',
    mode: 'linear',
    palette: ['yellow', 'red', 'blue'],
    min: 1,
    max: 1000
  }
};

الفاصل الزمني

يضبط وضع الاستقراء على فترات خاصية نمط العناصر من خلال ربط قيم الإدخال بفاصلات الفئات ثم تطبيق رمز خاص بالفئة. يتمّ إسناد قيم الإدخال من سمة العنصر المحدّدة إلى أقرب قيمة فاصل فئة من خلال التقريب للأسفل. يتم تنسيق الخاصية palette كقائمة من القوائم، حيث يحتوي كل قائمة داخلية على قيمة فاصل فئة متبوعة بقيمة الخاصية للنمط. إنّ العناصر التي تكون قيمة السمة فيها أقل من الحد الأدنى لقيمة فاصل الفئة تحافظ على إعدادات السمة التلقائية للأسلوب.

في المثال التالي، يتم ضبط مستوى التعتيم لملء العناصر وفقًا للفئات المتدرّجة للسمة "REP_AREA". يتم توفير تعريف الفئة وأسلوبها الرموز في سمة palette كقائمة قوائم. ويشير ذلك إلى أنّه يجب أن تكون هناك 4 فئات مع فواصل عند القيمة 0 و80 و2000 و 5000، مع شفافية العناصر المتعلّقة التي تبلغ 0.5 و0.35 و0.22 و0.15. بعبارة أخرى، فإنّ العناصر التي تحتوي على قيم "REP_AREA" في النطاق ‎0 \le x < 80‎ سيكون لها مستوى شفافية تعبئة يبلغ ‎0.5، والقيم في النطاق ‎80 \le x < 2000‎ سيكون لها مستوى شفافية تعبئة يبلغ ‎0.35، وهكذا.

var visParams = {
  fillOpacity: {
    property: 'REP_AREA',
    mode: 'interval',
    palette: [
      [0, 0.5],
      [80, 0.35],
      [2000, 0.22],
      [5000, 0.15]
    ]
  }
};

جميع سمات الأنماط

في ما يلي جميع سمات التصميم التي يمكنك تحديدها في عنصر التصميم. يؤدي ضبط سمات النمط لأنواع هندسية معيّنة إلى إلغاء سمات النمط المقابلة التي تم ضبطها في "كل الأشكال الهندسية" (على سبيل المثال، يؤدي ضبط polygonFillColor إلى إلغاء القيمة التي تم ضبطها في fillColor).

الموقع النوع الوصف تتيح استخدام القاعدة التي تمّت الاستقراء فيها
جميع الأشكال الهندسية
isVisible Boolean لضبط ما إذا كانت الميزة مرئية لا
color String لضبط لون التعبئة/الخط لكل أنواع الأشكال الهندسية يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
opacity Double تُستخدَم لضبط مستوى شفافية الحشو/السكتة لجميع أنواع الأشكال الهندسية. يجب أن تكون قيمة مضاعفة بين 0 و1. نعم
width Double لضبط سمك الحدود لجميع أنواع الأشكال الهندسية نعم
fillColor String لضبط لون التعبئة لجميع أنواع الأشكال الهندسية يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
أشكال النقاط
pointShape String لضبط شكل الأشكال الهندسية للنقاط تتيح استخدام الأشكال نفسها المستخدَمة في ee.FeatureCollection.style (دائرة، مربّع، مربّع بيضاوي، صليب، علامة الجمع، نجمة خماسية، نجمة سداسية، مثلث، مثلث_أعلى، مثلث_أسفل، مثلث_يسار، مثلث_يمين، خماسي الأضلاع، سداسي الأضلاع، نجم5، نجم6). لا
pointSize Double تُستخدَم لضبط عرض أشكال النقاط (بالبكسل). نعم
pointFillColor String لضبط لون التعبئة لأشكال النقاط يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
pointFillOpacity Double لضبط تعتيم التعبئة لأشكال النقاط يجب أن تكون قيمة مضاعفة بين 0 و1. نعم
أشكال الخطوط
lineType String لضبط نوع الخط تتيح الأنواع نفسها التي تتيحها ee.FeatureCollection.style (ملصق صلب أو متقطع أو مرقّط). لا
lineWidth Double لضبط عرض السطر (بالبكسل). نعم
lineColor String لضبط اللون لأشكال الخطوط يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
lineOpacity Double لضبط التعتيم لأشكال الخطوط يجب أن تكون قيمة مضاعفة بين 0 و1. نعم
أشكال المضلّعات
polygonStrokeWidth Double لضبط عرض خطوط الأشكال المتعددة الأضلاع (بالبكسل). نعم
polygonStrokeType String لضبط نوع الخطوط للأشكال المتعددة الأضلاع تتيح الأنواع نفسها التي تتيحها ee.FeatureCollection.style (ملصق صلب أو متقطع أو مرقّط). لا
polygonStrokeColor String لضبط لون الخطوط الهندسية للأشكال المتعددة الأضلاع يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
polygonStrokeOpacity Double لضبط مستوى شفافية إطار الشكل الهندسي للمضلّعات يجب أن تكون قيمة مضاعفة بين 0 و1. نعم
polygonFillColor String لضبط لون التعبئة لأشكال المضلّعات يجب أن تكون قيمة سداسية عشرية أو لونًا بتنسيق CSS3. نعم
polygonFillOpacity Double لضبط تعتيم التعبئة لأشكال المضلّعات يجب أن تكون قيمة مضاعفة بين 0 و1. نعم