Ajouter un ensemble de données à une carte

Sélectionnez une plate-forme : Android iOS JavaScript

Cette page explique comment ajouter un ensemble de données à une carte et appliquer un style.

Appliquez un style à un élément géographique d'un ensemble de données.

Prérequis

Avant de continuer, vous devez disposer d'un ID de carte, d'un style de carte et d'un ID d'ensemble de données.

Associer un ID d'ensemble de données à un style de carte

Pour styliser les éléments géographiques d'un ensemble de données, vous devez appliquer une fonction de style au calque d'éléments géographiques de l'ensemble de données d'une carte. Le calque d'éléments géographiques de l'ensemble de données est créé lorsque vous associez un ensemble de données à un style de carte.

Pour associer votre ensemble de données au style de carte que vous utilisez, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Ensembles de données.
  2. Cliquez sur le nom de l'ensemble de données. La page Détails de l'ensemble de données s'affiche.
  3. Cliquez sur l'onglet Aperçu.
  4. Dans la section Styles de carte associés, cliquez sur AJOUTER UN STYLE DE CARTE.
    Capture d'écran du bouton AJOUTER UN STYLE DE CARTE
  5. Cochez les cases des styles de carte à associer, puis cliquez sur ENREGISTRER.

Appliquer des styles à l'ensemble de données

Pour styliser un élément géographique du calque de l'ensemble de données, utilisez une fermeture de stylisation qui accepte un GMSDatasetFeature et renvoie un GMSFeatureStyle pour définir les attributs de style. Définissez ensuite la propriété de style sur une fermeture de style, qui contient une logique de style.

La fermeture de style doit être déterministe et renvoyer des résultats cohérents lorsqu'elle est appliquée. Si les spécifications de style d'un élément cartographique sont modifiées, le style doit être appliqué à nouveau.

Définir le trait, le remplissage et le rayon du point

Lorsque vous définissez le style d'un élément géographique dans la fonction de style, vous pouvez définir les éléments suivants:

  • Couleur et opacité du trait de la bordure, comme défini par la classe UIColor. La valeur par défaut est transparente (UIColor.clearColor).

  • Épaisseur du trait de la bordure en pixels à l'écran. La valeur par défaut est "2".

  • Couleur et opacité du remplissage, comme défini par la classe UIColor. La valeur par défaut est transparente (UIColor.clearColor).

  • Rayon du point d'un élément géographique ponctuel compris entre 0 et 128 pixels.

Utiliser des règles de style simples

Le moyen le plus simple de styliser les éléments géographiques consiste à définir des attributs de style constants tels que la couleur, l'opacité et la largeur de trait. Appliquez des options de style d'éléments géographiques directement au calque d'éléments géographiques d'un ensemble de données ou combinez-les à un style personnalisé.

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;
};

Utiliser des règles de style déclaratives

Vous pouvez définir des règles de style de manière déclarative en fonction d'un attribut de l'élément géographique et les appliquer à l'ensemble de votre ensemble de données. Vous pouvez renvoyer nil à partir de votre fonction de style d'éléments géographiques, par exemple, si vous souhaitez qu'un sous-ensemble d'éléments géographiques reste invisible.

Par exemple, utilisez GMSDatasetFeature.datasetAttributes pour renvoyer la valeur d'un attribut d'ensemble de données pour une fonctionnalité. Vous pouvez ensuite personnaliser le style de l'élément géographique en fonction de ses attributs.

Cet exemple détermine la valeur de l'attribut "highlightColor" de chaque élément géographique d'un ensemble de données pour contrôler le style:

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.
    ...
};

Supprimer le style d'un calque

Pour supprimer le style d'un calque, définissez le style sur null :

Swift

layer.style = nil

Objective-C

layer.style = nil;

Vous pouvez également renvoyer nil à partir de votre fonction de style d'éléments géographiques, par exemple, si vous souhaitez qu'un sous-ensemble d'éléments géographiques reste invisible.