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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • لون الخط ودرجة التعتيم للحدود كما هو محدّد في 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 من دالة نمط الميزة، على سبيل المثال إذا تريد أن تظل مجموعة فرعية من الميزات غير مرئية.