Aggiungere un set di dati a una mappa

Seleziona la piattaforma: Android iOS JavaScript

Questa pagina mostra come aggiungere un set di dati a una mappa e applicare uno stile.

Applica uno stile a un elemento del set di dati.

Prerequisiti

Prima di procedere, devi disporre di un ID mappa, uno stile di mappa e un ID set di dati.

Associare un ID set di dati a uno stile di mappa

Per applicare gli stili agli elementi di un set di dati, applica una funzione di stile al livello elemento del set di dati di una mappa. Il livello featrue del set di dati viene creato quando associ un set di dati a uno stile di mappa.

Per associare il set di dati allo stile di mappa in uso:

  1. Nella console Google Cloud, vai alla pagina Set di dati.
  2. Fai clic sul nome del set di dati. Viene visualizzata la pagina Dettagli set di dati.
  3. Fai clic sulla scheda Anteprima.
  4. Nella sezione Stili di mappa associati, fai clic su AGGIUNGI STILE MAPPA.
    Screenshot del pulsante AGGIUNGI STILE MAPPA.
  5. Fai clic sulle caselle di controllo degli stili di mappa da associare e poi su SALVA.

Applica gli stili al set di dati

Per applicare uno stile a un elemento del livello del set di dati, utilizza una chiusura di stile che accetti un GMSDatasetFeature e restituisce un GMSFeatureStyle per definire gli attributi di stile. Imposta quindi la proprietà style su una chiusura di stile che contiene la logica di stile.

La chiusura dello stile deve essere deterministica e restituire risultati coerenti quando viene applicata. Se le specifiche di stile di una funzionalità vengono modificate, lo stile deve essere applicato di nuovo.

Impostare tratto, riempimento e raggio del punto

Quando stili una funzionalità nella funzione di fabbrica di stili, puoi impostare:

  • Colore e opacità del tratto del bordo come definito dalla classe UIColor. Il valore predefinito è trasparente (UIColor.clearColor).

  • Spessore del tratto del bordo in pixel dello schermo. Il valore predefinito è 2.

  • Colore e opacità del riempimento come definito dalla classe UIColor. Il valore predefinito è trasparente (UIColor.clearColor).

  • Raggio del punto di un elemento punto compreso tra 0 e 128 pixel.

Utilizza regole di stile semplici

Il modo più semplice per applicare uno stile alle funzionalità è definire attributi di stile costanti come colore, opacità e larghezza della linea. Applica le opzioni di stile delle funzionalità direttamente a un livello fea. tset o utilizzale in combinazione con stili personalizzati.

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

Utilizzare regole di stile dichiarative

Puoi impostare le regole di stile in modo dichiarativo in base a un attributo della funzionalità e applicarle all'intero set di dati. Puoi restituire nil dalla funzione di stile delle funzionalità, ad esempio se vuoi che un sottoinsieme di elementi rimanga invisibile.

Ad esempio, utilizza GMSDatasetFeature.datasetAttributes per restituire il valore di un attributo del set di dati per una funzionalità. Puoi quindi personalizzare lo stile della funzionalità in base ai suoi attributi.

Questo esempio determina il valore dell'attributo "highlightColor" di ogni elemento di un set di dati per controllare lo stile:

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

Rimuovere lo stile da un livello

Per rimuovere lo stile da un livello, imposta style su null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

Puoi anche restituire nil dalla funzione di stile delle funzionalità, ad esempio se vuoi che un sottoinsieme di elementi rimanga invisibile.