إضافة مجموعة بيانات إلى خريطة

اختيار النظام الأساسي: نظام التشغيل Android iOS JavaScript

توضّح لك هذه الصفحة كيفية إضافة مجموعة بيانات إلى خريطة وتطبيق أسلوب عليها.

يمكنك تطبيق النمط على إحدى ميزات مجموعة البيانات.

المتطلبات الأساسية

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

ربط معرّف مجموعة بيانات بنمط خريطة

لتحديد نمط ميزات مجموعة بيانات، يمكنك تطبيق دالة النمط على طبقة مجموعة البيانات على الخريطة. يتم إنشاء طبقة ميزة مجموعة البيانات عندما ربط مجموعة بيانات بنمط خريطة.

اتخذ الخطوات التالية لربط مجموعة البيانات الخاصة بك بنمط الخريطة الذي باستخدام:

  1. في Google Cloud Console، انتقِل إلى صفحة مجموعات البيانات.
  2. انقر فوق اسم مجموعة البيانات. تظهر صفحة تفاصيل مجموعة البيانات.
  3. انقر على علامة التبويب معاينة.
  4. في قسم أنماط الخريطة المرتبطة، انقر على إضافة نمط الخريطة:
    لقطة شاشة لزر "ADD MAP STYLE".
  5. انقر فوق مربعات الاختيار لأنماط الخريطة المراد ربطها ثم انقر انقر على حفظ.

تطبيق الأنماط على مجموعة البيانات

لتصميم ميزة لطبقة مجموعة البيانات، استخدم إغلاق نمط يقبل GMSDatasetFeature وتعرض GMSFeatureStyle لتحديد النمط ذات الصلة. بعد ذلك، اضبط سمة style على عنصر إغلاق تنسيق يحتوي على منطق التنسيق.

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

تعيين الحد الخارجي والتعبئة ونصف قطر النقطة

عند تصميم ميزة في دالة "معمل الأنماط"، يمكنك ضبط ما يلي:

  • لون الخطوط ودرجة التعتيم للحدود كما هو محدّد في فئة UIColor القيمة التلقائية هي شفافة (UIColor.clearColor).

  • عرض الخط للحدود بوحدات بكسل الشاشة والقيمة الافتراضية هي 2.

  • املأ اللون ودرجة التعتيم كما هو محدّد في فئة UIColor. الإعداد التلقائي القيمة شفافة (UIColor.clearColor).

  • نصف القطر لعنصر نقطة يتراوح بين 0 و128 بكسل.

استخدام قواعد النمط البسيطة

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

Swift

let mapView = GMSMapView(frame: .zero, mapID: GMSMapID(identifier: "YOUR_MAP_ID"), camera: GMSCameraPosition(latitude: 40.7, longitude: -74.0, zoom: 12))

let layer = mapView.datasetFeatureLayer(of: "YOUR_DATASET_ID")

// Define a style with green fill and stroke.
// Apply the style to all features in the dataset.
layer.style = { feature in
    let style = MutableFeatureStyle()
    style.fillColor = .green.withAlphaComponent(0.1)
    style.strokeColor = .green
    style.strokeWidth = 2.0
    return style
}

Objective-C

GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:[GMSMapID mapIDWithIdentifier:@"MAP_ID"] camera:[GMSCameraPosition cameraWithLatitude: 40.7 longitude: -74.0 zoom:12]];

GMSDatasetFeatureLayer *layer = [mapView datasetFeatureLayerOfDatasetID:@"YOUR_DATASET_ID"];

// Define a style with green fill and stroke.
// Apply the style to all features in the dataset.
layer.style = ^(GMSDatasetFeature *feature) {
    GMSMutableFeatureStyle *style = [GMSMutableFeatureStyle style];
    style.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.1];
    style.strokeColor = [UIColor greenColor];
    style.strokeWidth = 2.0;
    return style;
};

استخدام قواعد نمط التعريف

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

على سبيل المثال، استخدم العنصر GMSDatasetFeature.datasetAttributes لعرض قيمة تصنيف مجموعة بيانات لعنصر. يمكنك بعد ذلك تخصيص تصميم العنصر بناءً على سماتها.

يحدد هذا المثال قيمة "highlightColor" لكل منها إحدى ميزات مجموعة البيانات للتحكم في التصميم:

Swift

layer.style = { feature in
    var attributeColor: String = feature.datasetAttributes["highlightColor"]
    // Conditionalize styling based on the value of the "highlightColor" attribute.
    ...
}

Objective-C

// Apply the style to a single dataset feature.
layer.style = ^(GMSDatasetFeature *feature) {
    NSString *attributeColor = feature.datasetAttributes[@"highlightColor"];
    // Conditionalize styling based on the value of the "highlightColor" attribute.
    ...
};

إزالة التصميم من طبقة

لإزالة النمط من طبقة، اضبط style على null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

ويمكنك أيضًا عرض nil من دالة نمط الميزة، على سبيل المثال إذا تريد أن تظل مجموعة فرعية من الميزات غير مرئية.