Dodawanie zbioru danych do mapy

Wybierz platformę: Android iOS JavaScript

Ta strona pokazuje, jak dodać zbiór danych do mapy i zastosować styl.

Zastosowanie stylizacji do atrybutu zbioru danych.

Wymagania wstępne

Zanim przejdziesz dalej, musisz mieć identyfikator mapy, styl mapy i identyfikator zbioru danych.

Powiązanie identyfikatora zbioru danych ze stylem mapy

Aby nadać styl elementom w zbiorze danych, zastosuj funkcję stylizacji do warstwy funkcji zbioru danych na mapie. Warstwę obiektów zbioru danych tworzysz, gdy powiążesz zbiór danych ze stylem mapy.

Aby powiązać zbiór danych ze stylem mapy, którego używasz:

  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 z przyciskiem DODAJ STYLU MAPY
  5. Zaznacz pola wyboru obok stylów mapy, które chcesz powiązać, a potem kliknij ZAPISZ.

Stosowanie stylów do zbioru danych

Aby nadać styl funkcji warstwy zbioru danych, użyj funkcji zamykającej styl, która przyjmuje parametr GMSDatasetFeature i zwraca parametr GMSFeatureStyle, aby zdefiniować atrybuty stylu. Następnie ustaw właściwość style na zamknięcie stylizacji, które zawiera logikę stylizacji.

Funkcja stylizacji musi być deterministyczna i zwracać spójne wyniki po zastosowaniu. Jeśli zmienisz specyfikację stylizacji dowolnej funkcji, styl należy zastosować ponownie.

Ustawianie krzywizny, wypełnienia i promienia punktu

Podczas stylizacji funkcji w funkcji fabryki stylów możesz ustawić:

  • Kolor i przezroczystość kreski obramowania określonej przez klasę UIColor. Wartością domyślną jest przezroczystość (UIColor.clearColor).

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

  • Kolor wypełnienia i przezroczystość określone przez klasę UIColor. Wartość domyślna to przezroczystość (UIColor.clearColor).

  • Promień punktu elementu punktowego w zakresie od 0 do 128 pikseli.

Używanie prostych reguł stylów

Najprostszym sposobem nadawania stylów elementom jest definiowanie stałych atrybutów stylów, takich jak kolor, krycie i szerokość linii. Możesz zastosować opcje stylów elementów bezpośrednio do warstwy elementów zbioru danych lub używać ich w połączeniu ze stylami niestandardowymi.

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

Korzystanie z deklaratywnych reguł stylów

Możesz deklaratywnie ustawiać reguły stylów na podstawie atrybutu funkcji i stosować je w całym zbiorze danych. Funkcja stylu funkcji może zwracać wartość nil, na przykład jeśli chcesz, aby podzbiór funkcji pozostał niewidoczny.

Aby zwrócić wartość atrybutu zbioru danych dla cechy, użyj na przykład atrybutu GMSDatasetFeature.datasetAttributes. Następnie możesz dostosować styl funkcji na podstawie jej atrybutów.

W tym przykładzie określa się wartość atrybutu „highlightColor” każdego elementu w zbiorze danych, aby kontrolować styl:

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 stylizacji z warstwy

Aby usunąć stylizację z warstwy, ustaw wartość style na null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

Możesz też zwrócić nil z funkcji stylu funkcji, na przykład jeśli chcesz, aby podzbiór funkcji pozostał niewidoczny.