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.

Stile 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

Um die Elemente eines Datasets zu gestalten, wenden Sie eine Stilfunktion auf die Elementebene des Datasets einer Karte an. Der Dataset-Feature-Layer 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 einer Plus-Schaltfläche rechts, auf der „KARTENSTIL HINZUFÜGEN“ steht.
  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

Um ein Element der Dataset-Ebene zu gestalten, verwenden Sie einen Styling-Closure, der ein GMSDatasetFeature akzeptiert und ein GMSFeatureStyle zurückgibt, um Stilattribute zu definieren. Legen Sie dann die Stileigenschaft auf einen Styling-Closure fest, der Styling-Logik enthält.

Die Styling-Closure muss deterministisch sein und konsistente Ergebnisse zurückgeben, wenn sie angewendet wird. Wenn sich die Stilspezifikationen eines Elements ändern, muss der Stil noch einmal angewendet werden.

Strich, Füllung und Punktradius festlegen

Wenn Sie ein Element in der Stil-Factory-Funktion gestalten, können Sie Folgendes festlegen:

  • Strichfarbe und ‑deckkraft des Rahmens, wie durch die UIColor-Klasse definiert. Der Standardwert ist transparent (UIColor.clearColor).

  • Strichstärke des Rahmens in Bildschirmpixeln. Der Standardwert liegt bei 2.

  • Füllfarbe und Deckkraft, wie durch die Klasse UIColor definiert. Der Standardwert ist „transparent“ (UIColor.clearColor).

  • Punktradius eines Punkt-Features zwischen 0 und 128 Pixeln.

Einfache Stilregeln verwenden

Die einfachste Möglichkeit, Elemente zu gestalten, ist die Definition konstanter Stilattribute wie Farbe, Deckkraft und Linienstärke. 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 auf Grundlage eines Attributs 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 Feature zurückzugeben. Anschließend können Sie das Design des Features basierend auf seinen Attributen anpassen.

In diesem Beispiel wird der Wert des Attributs „highlightColor“ für jedes Merkmal eines Datasets bestimmt, um das Styling 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.