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

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

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

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

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

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

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

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

  1. في Google Cloud Console، انتقِل إلى صفحة مجموعات البيانات.
  2. انقر فوق اسم مجموعة البيانات. ستظهر صفحة تفاصيل مجموعة البيانات.
  3. انقر على علامة التبويب معاينة.
  4. في قسم أنماط الخرائط المرتبطة، انقر على إضافة نمط خريطة.
    لقطة شاشة لزر "إضافة نمط الخريطة".
  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 من دالة نمط الميزات، على سبيل المثال، إذا كنت تريد إبقاء مجموعة فرعية من الميزات غير مرئية.