Einer Karte ein Dataset hinzufügen

Plattform auswählen: Android iOS JavaScript

Auf dieser Seite wird beschrieben, wie Sie einer Karte ein Dataset hinzufügen und Stile anwenden.

Stil auf ein Dataset-Element anwenden

Vorbereitung

Bevor Sie fortfahren, sollten Sie eine Karten-ID, einen Kartenstil und eine Dataset-ID haben.

Dataset-ID mit Kartenstil verknüpfen

Wenn Sie die Elemente eines Datasets gestalten möchten, wenden Sie eine Stilfunktion auf die Elementebene des Datasets einer Karte an. Die Element-Ebene des Datasets wird erstellt, wenn Sie ein Dataset mit einem Kartenstil verknüpfen.

So verknüpfen Sie Ihr Dataset mit dem verwendeten Kartenstil:

  1. Rufen Sie in der Google Cloud Console die Seite Datasets auf.
  2. Klicken Sie auf den Namen des Datasets. Daraufhin wird die Seite Dataset-Details angezeigt.
  3. Klicken Sie auf den Tab Vorschau.
  4. Klicken Sie im Bereich Verknüpfte Kartenstile auf KARTENSTIL HINZUFÜGEN.
    Der Bereich „Verknüpfte Kartenstile“ mit einem Pluszeichen und dem Text „KARTENSTIL HINZUFÜGEN“ rechts daneben.
  5. Kreuzen Sie die Kästchen für die zu verknüpfenden Kartenstile an und klicken Sie dann auf SPEICHERN.

Stile auf das Dataset anwenden

Wenn Sie ein Element der Dataset-Ebene gestalten möchten, verwenden Sie einen Stil-Closure, der ein GMSDatasetFeature akzeptiert und ein GMSFeatureStyle zurückgibt, um Stil attribute zu definieren. Legen Sie dann die Stileigenschaft auf einen Stil-Closure fest, der die Gestaltungslogik enthält.

Der Stil-Closure muss deterministisch sein und bei der Anwendung konsistente Ergebnisse zurückgeben. Wenn sich Stilspezifikationen eines Elements ändern, muss der Stil noch einmal angewendet werden.

Strich, Füllung und Punktradius festlegen

Beim Gestalten eines Elements in der Stil-Fabrikmethode können Sie Folgendes festlegen:

  • Strichfarbe und -deckkraft der Umrandung, wie in der Klasse UIColor definiert. Der Standardwert ist transparent (UIColor.clearColor).

  • Strichstärke der Umrandung in Bildschirmpixeln. Der Standardwert ist 2.

  • Füllfarbe und -deckkraft , wie in der Klasse UIColor definiert. Der Standardwert ist transparent (UIColor.clearColor).

  • Punktradius eines Punktelements zwischen 0 und 128 Pixeln.

Einfache Stilregeln verwenden

Die einfachste Möglichkeit, Elemente zu gestalten, ist die Definition konstanter Stilattribute wie Farbe, Deckkraft und Linienbreite. Sie können Stiloptionen für Elemente direkt auf eine Elementebene des Datasets anwenden oder sie in Verbindung mit benutzerdefinierten Stilen verwenden.

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

Deklarative Stilregeln verwenden

Sie können Stilregeln deklarativ basierend auf einem Attribut des Elements festlegen und auf das gesamte Dataset anwenden. Über die Stilfunktion für Elemente können Sie auch nil zurückgeben, z. B. wenn ein Teil der Elemente unsichtbar bleiben soll.

Verwenden Sie beispielsweise GMSDatasetFeature.datasetAttributes, um den Wert eines Dataset-Attributs für ein Element zurückzugeben. Anschließend können Sie den Stil des Elements basierend auf seinen Attributen anpassen.

In diesem Beispiel wird der Wert des Attributs „highlightColor“ jedes Elements eines Datasets ermittelt, um den Stil zu steuern:

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

Stile von einer Ebene entfernen

Wenn Sie Stile von einer Ebene entfernen möchten, legen Sie style auf null fest:

Swift

layer.style = nil

Objective-C

layer.style = nil;

Über die Stilfunktion für Elemente können Sie auch nil zurückgeben, z. B. wenn ein Teil der Elemente unsichtbar bleiben soll.