إضافة طبقة بيانات بسيطة
توفر SimpleDataLayer وحدة IO المكانية فئة. تسهل هذه الفئة عرض المعالم النمطية على الخريطة. يمكنه حتى عرض مجموعات البيانات التي تحتوي على خصائص النمط ومجموعات البيانات التي تحتوي على أنواع هندسية مختلطة. تحقق طبقة البيانات البسيطة هذه الوظيفة عن طريق التفاف طبقات عرض متعددة واستخدام تعبيرات النمط. تبحث تعبيرات النمط عن خصائص النمط الشائعة للمعالم داخل هذه الطبقات الملفوفة. تستخدم الدالة atlas.io.read والدالة atlas.io.write هذه الخصائص لقراءة الأنماط وكتابتها في تنسيق ملف مدعوم. بعد إضافة الخصائص إلى تنسيق ملف مدعوم ، يمكن استخدام الملف لأغراض مختلفة. على سبيل المثال، يمكن استخدام الملف لعرض المعالم الأنيقة على الخريطة.
بالإضافة إلى ميزات التصميم ، SimpleDataLayer يوفر ميزة منبثقة مضمنة مع قالب منبثق. يتم عرض النافذة المنبثقة عند النقر فوق ميزة. يمكن تعطيل ميزة النافذة المنبثقة الافتراضية ، إذا رغبت في ذلك. تدعم هذه الطبقة أيضا البيانات المجمعة. عند النقر فوق مجموعة، ستقوم الخريطة بتكبير الكتلة وتوسيعها إلى نقاط فردية ومجموعات فرعية.
الغرض SimpleDataLayer من الفئة هو استخدامها على مجموعات البيانات الكبيرة مع العديد من أنواع الهندسة والعديد من الأنماط المطبقة على الميزات. عند استخدامها، تضيف هذه الفئة عبئا من ست طبقات تحتوي على تعبيرات نمط. لذلك ، هناك حالات يكون فيها استخدام طبقات العرض الأساسية أكثر كفاءة. على سبيل المثال، استخدم طبقة أساسية لعرض نوعين من الأشكال الهندسية وبعض الأنماط على معلم
استخدام طبقة بيانات بسيطة
يتم SimpleDataLayer استخدام الفئة مثل طبقات العرض الأخرى المستخدمة. يوضح الرمز أدناه كيفية استخدام طبقة بيانات بسيطة في خريطة:
//Create a data source and add it to the map.
var datasource = new atlas.source.DataSource();
map.sources.add(datasource);
//Add a simple data layer for rendering data.
var layer = new atlas.layer.SimpleDataLayer(datasource);
map.layers.add(layer);
إضافة ميزات إلى مصدر البيانات. بعد ذلك ، ستكتشف طبقة البيانات البسيطة أفضل طريقة لعرض المعالم. يمكن تعيين أنماط المعالم الفردية كخصائص على الميزة. تعرض التعليمة البرمجية التالية ميزة نقطة GeoJSON مع خاصية color تم تعيينها إلى red.
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [0, 0]
},
"properties": {
"color": "red"
}
}
تعرض التعليمة البرمجية التالية ميزة النقطة أعلاه باستخدام طبقة البيانات البسيطة.
تأتي القوة الحقيقية لطبقة البيانات البسيطة عندما:
- هناك عدة أنواع مختلفة من الميزات في مصدر البيانات. أو
- تحتوي الميزات الموجودة في مجموعة البيانات على العديد من خصائص النمط التي تم تعيينها بشكل فردي عليها ؛ أو
- لست متأكدا مما تحتويه مجموعة البيانات بالضبط.
على سبيل المثال عند تحليل خلاصات بيانات XML، قد لا تعرف الأنماط الدقيقة وأنواع الهندسة للمعالم. يوضح النموذج التالي قوة طبقة البيانات البسيطة عن طريق عرض ميزات ملف KML. كما يوضح الخيارات المختلفة التي توفرها فئة طبقة البيانات البسيطة.
ملاحظة
تستخدم طبقة البيانات البسيطة هذه فئة القالب المنبثق لعرض بالونات KML أو خصائص المعالم كجدول. بشكل افتراضي ، سيتم وضع جميع المحتويات المقدمة في النافذة المنبثقة في وضع الحماية داخل iframe كميزة أمان. ومع ذلك ، هناك قيود:
- يتم تعطيل جميع البرامج النصية والنماذج وقفل المؤشر ووظائف التنقل العلوية. يسمح بفتح الروابط في علامة تبويب جديدة عند النقر عليها.
- ستقتصر المتصفحات القديمة التي لا تدعم المعلمة
srcdocعلى إطارات iframe على عرض كمية صغيرة من المحتوى.
إذا كنت تثق في البيانات التي يتم تحميلها في النوافذ المنبثقة وتريد أن تتمكن هذه البرامج النصية التي تم تحميلها في النوافذ المنبثقة من الوصول إلى تطبيقك ، فيمكنك تعطيل ذلك عن طريق تعيين خيار القوالب sandboxContent المنبثقة إلى false.
خصائص النمط المدعومة الافتراضية
كما ذكرنا سابقا ، تقوم طبقة البيانات البسيطة بتغليف العديد من طبقات العرض الأساسية: الفقاعة والرمز والخط والمضلع والمضلع المبثوق. ثم يستخدم التعبيرات للبحث عن خصائص نمط صالحة على المعالم الفردية.
خرائط Azure وخصائص نمط GitHub هما المجموعتان الرئيسيتان من أسماء الخصائص المدعومة. يتم دعم معظم أسماء الخصائص لخيارات طبقة خرائط Azure المختلفة كخصائص نمط للمعالم في طبقة البيانات البسيطة. تمت إضافة تعبيرات إلى بعض خيارات الطبقة لدعم أسماء خصائص النمط التي يشيع استخدامها من قبل GitHub. يتم تعريف أسماء الخصائص هذه بواسطة دعم خريطة GeoJSON من GitHub، ويتم استخدامها لتصميم ملفات GeoJSON التي يتم تخزينها وعرضها داخل النظام الأساسي. يتم دعم جميع خصائص التصميم الخاصة GitHub في طبقة البيانات البسيطة، باستثناء خصائص التصميمmarker-symbol.
إذا صادف القارئ خاصية نمط أقل شيوعا ، فسيقوم بتحويلها إلى أقرب خاصية نمط خرائط Azure. بالإضافة إلى ذلك، يمكن تجاوز تعبيرات النمط الافتراضية باستخدام getLayers وظيفة طبقة البيانات البسيطة وتحديث الخيارات على أي من الطبقات.
توفر الأقسام التالية تفاصيل حول خصائص النمط الافتراضية التي تدعمها طبقة البيانات البسيطة. ترتيب اسم الخاصية المدعومة هو أيضا أولوية الخاصية. إذا تم تعريف خاصيتي نمط لنفس خيار الطبقة، فإن الخاصية الأولى في القائمة لها أسبقية أعلى. يمكن أن تكون الألوان أي قيمة لون CSS3 ؛ HEX، RGB، RGBA، HSL، HSLA، أو قيمة اللون المسماة.
خصائص نمط طبقة الفقاعة
إذا كانت الميزة هي Point a أو a MultiPoint، ولم يكن للميزة خاصية image يمكن استخدامها كرمز مخصص لعرض النقطة كرمز ، عرض الميزة باستخدام BubbleLayer.
| خيار الطبقة | اسم (أسماء) الخصائص المدعومة | القيمة الافتراضية |
|---|---|---|
color |
color, marker-color |
'#1A73AA' |
radius |
size1، 2، scalemarker-size1 |
8 |
strokeColor |
strokeColor, stroke |
'#FFFFFF' |
[1] تعتبر size القيم والقيم scale قيما عددية، وسيتم ضربها في 8
[2] إذا تم تحديد الخيار GitHubmarker-size، استخدام القيم التالية لنصف القطر.
| حجم العلامة | نصف القطر |
|---|---|
small |
6 |
medium |
8 |
large |
12 |
يتم تقديم المجموعات أيضا باستخدام طبقة الفقاعة. بشكل افتراضي ، يتم تعيين نصف قطر الكتلة إلى 16. يختلف لون الكتلة اعتمادا على عدد النقاط في المجموعة، كما هو موضح أدناه:
| عدد النقاط | اللون |
|---|---|
| >= 100 | red |
| >= 10 | yellow |
| < 10 | green |
خصائص نمط الرمز
إذا كانت Point الميزة هي a أو a MultiPoint، وكانت الميزة تحتوي على خاصية image يمكن استخدامها كرمز مخصص لعرض النقطة كرمز ، عرض الميزة باستخدام SymbolLayer.
| خيار الطبقة | اسم (أسماء) الخصائص المدعومة | القيمة الافتراضية |
|---|---|---|
image |
image |
none |
size |
size، marker-size1 |
1 |
rotation |
rotation |
0 |
offset |
offset |
[0, 0] |
anchor |
anchor |
'bottom' |
[1] إذا تم تحديد الخيار GitHubmarker-size، استخدام القيم التالية لخيار حجم الرمز.
| حجم العلامة | حجم الرمز |
|---|---|
small |
0.5 |
medium |
1 |
large |
2 |
إذا كانت ميزة النقطة عبارة عن point_count_abbreviated مجموعة، عرض الخاصية كتسمية نصية. لن يتم عرض أي صورة.
خصائص نمط الخط
إذا كانت الميزة عبارة عن LineString، أو ، Polygonأو MultiPolygon، MultiLineStringفسيتم عرض الميزة باستخدام LineLayerملف .
| خيار الطبقة | اسم (أسماء) الخصائص المدعومة | القيمة الافتراضية |
|---|---|---|
strokeColor |
strokeColor, stroke |
'#1E90FF' |
strokeWidth |
strokeWidth, stroke-width, stroke-thickness |
3 |
strokeOpacity |
strokeOpacity, stroke-opacity |
1 |
خصائص نمط المضلع
إذا كانت الميزة هي a أو a MultiPolygonPolygon ، وكانت الميزة إما لا تحتوي على خاصية أو كانت height الخاصية height صفرا PolygonLayer، عرض الميزة باستخدام.
| خيار الطبقة | اسم (أسماء) الخصائص المدعومة | القيمة الافتراضية |
|---|---|---|
fillColor |
fillColor, fill |
'#1E90FF' |
fillOpacity |
fillOpacity, 'fill-opacity |
0.5 |
خصائص نمط المضلع المبثوق
إذا كانت الميزة هي Polygon a أو a MultiPolygon، ولها height خاصية بقيمة أكبر من 0 ، عرض الميزة باستخدام PolygonExtrusionLayer.
| خيار الطبقة | اسم (أسماء) الخصائص المدعومة | القيمة الافتراضية |
|---|---|---|
base |
base |
0 |
fillColor |
fillColor, fill |
'#1E90FF' |
height |
height |
0 |
الخطوات التالية
تعرف على المزيد حول الفئات والأساليب المستخدمة في هذه المقالة:
راجع المقالات التالية للحصول على مزيد من نماذج التعليمات البرمجية لإضافتها إلى خرائطك: