Cette page explique comment ajouter un ensemble de données à une carte et appliquer un style.
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 :
- Dans la console Google Cloud, accédez à la page Ensembles de données.
- Cliquez sur le nom de l'ensemble de données. La page Détails de l'ensemble de données s'affiche.
- Cliquez sur l'onglet Aperçu.
- Dans la section Styles de carte associés, cliquez sur AJOUTER UN STYLE DE CARTE.
- 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.