Dodawanie zbioru danych do mapy

Na tej stronie dowiesz się, jak dodać zbiór danych do mapy i zastosować styl.

Zastosuj styl do funkcji zbioru danych.

Wymagania wstępne

Zanim przejdziesz dalej, przygotuj identyfikator i styl mapy oraz identyfikator zbioru danych.

Powiąż identyfikator zbioru danych ze stylem mapy

Aby określić styl cech zbioru danych, zastosuj funkcję stylu do warstwy cech zbioru danych mapy. Warstwa cech zbioru danych jest tworzona, gdy powiąż zbiór danych ze stylem mapy.

Aby powiązać zbiór danych ze stylem mapy, wykonaj te czynności przy użyciu:

  1. W konsoli Google Cloud otwórz stronę Zbiory danych.
  2. Kliknij nazwę zbioru danych. Pojawi się strona Szczegóły zbioru danych.
  3. Kliknij kartę Podgląd.
  4. W sekcji Powiązane style mapy kliknij DODAJ STYL MAPY
    Zrzut ekranu pokazujący przycisk DODAJ STYL MAPY.
  5. Kliknij pola wyboru Style mapy, które chcesz powiązać, a następnie kliknij ZAPISZ.

Zastosuj style do zbioru danych

Aby określić styl cechy warstwy zbioru danych, użyj zamknięcia stylu, które akceptuje GMSDatasetFeature i zwraca GMSFeatureStyle, aby określić styl . Następnie ustaw właściwość stylu na zamknięcie stylu, które zawiera ciąg znaków zasady stylizacji.

Zamknięcie stylu musi być deterministyczne i spójne pod względem zwrotów po zastosowaniu wyników. Czy specyfikacje stylistyczne dowolnej funkcji musisz zmienić styl, musisz go zastosować ponownie.

Ustawianie kreski, wypełnienia i promienia punktu

Podczas określania stylu elementu w funkcji fabryki stylu możesz ustawić:

  • Kolor i przezroczystość obramowania zgodnie z definicją za pomocą atrybutu UIColor zajęcia. Wartością domyślną jest przezroczysta (UIColor.clearColor).

  • Szerokość kreski obramowania w pikselach ekranu. Wartością domyślną jest 2.

  • Kolor i przezroczystość zdefiniowane w klasie UIColor. Domyślny wartość jest przezroczysta (UIColor.clearColor).

  • Promień punktu obiektu punktowego o zakresie od 0 do 128 pikseli.

Używanie prostych reguł stylu

Najprostszym sposobem stylizacji obiektów jest definiowanie stałych atrybutów stylu, takich jak jak kolor, przezroczystość i szerokość linii. Zastosuj opcje stylu cech bezpośrednio do warstwa cech zbioru danych lub używać ich w połączeniu ze stylem niestandardowym.

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

Używaj reguł stylu deklaratywnego

Możesz ustawić reguły stylu deklaratywnie na podstawie atrybutu obiektu, i zastosować je w całym zbiorze danych. Możesz zwrócić nil ze swojego funkcji stylu cech, na przykład jeśli chcesz, aby podzbiór obiektów pozostała niewidoczny.

Na przykład użyj wartości GMSDatasetFeature.datasetAttributes zwraca wartość atrybutu zbioru danych dla danej cechy. Następnie możesz dostosować stylu elementu na podstawie jego atrybutów.

Ten przykład określa wartość atrybutu „highlightColor” każdej wartości w celu kontrolowania stylu:

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

Usuwanie stylu z warstwy

Aby usunąć styl z warstwy, ustaw style na null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

Możesz również zwrócić nil z funkcji stylu cech, na przykład chcesz, aby podzbiór cech pozostała niewidoczny.