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

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

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

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

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

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

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

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

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

  1. في وحدة تحكّم Google Cloud، انتقِل إلى صفحة مجموعات البيانات.
  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 من دالة نمط العنصر، مثلاً إذا أردت أن تظل مجموعة فرعية من العناصر غير مرئية.