Dodawanie zbioru danych do mapy

Wybierz platformę: Android iOS JavaScript

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

Stosowanie stylów do elementu zbioru danych.

Wymagania wstępne

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

Powiązywanie identyfikatora zbioru danych ze stylem mapy

Aby określić styl elementów zbioru danych, zastosuj funkcję stylu do warstwy mapy na mapie. Warstwa mapy zbioru danych jest tworzona, 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.
    Sekcja Powiązane style mapy z przyciskiem plus z napisem DODAJ STYL MAPY po prawej stronie.
  5. Kliknij pole wyboru obok stylu mapy, który chcesz powiązać, a następnie kliknij ZAPISZ.

Stosowanie stylów do zbioru danych

Aby określić styl elementu warstwy zbioru danych, użyj domknięcia stylu, które akceptuje GMSDatasetFeature i zwraca GMSFeatureStyle, aby zdefiniować atrybuty stylu. Następnie ustaw właściwość stylu na domknięcie stylu, które zawiera logikę stylu.

Domknięcie stylu musi być deterministyczne i po zastosowaniu zwracać spójne wyniki. Jeśli zmienisz jakiekolwiek specyfikacje stylu dowolnego elementu, musisz ponownie zastosować styl.

Ustawianie kreski, wypełnienia i promienia punktu

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

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

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

  • Kolor wypełnienia i przezroczystość zdefiniowane przez klasę UIColor. Wartością domyślną jest przezroczystość (UIColor.clearColor).

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

Używanie prostych reguł stylu

Najprostszym sposobem określania stylu elementów jest zdefiniowanie stałych atrybutów stylu, takich jak kolor, przezroczystość i szerokość linii. Zastosuj opcje stylu elementu bezpośrednio do warstwy mapy zbioru danych lub użyj 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żywanie deklaratywnych reguł stylu

Możesz deklaratywnie ustawić reguły stylu na podstawie atrybutu elementu i zastosować je do całego zbioru danych. Możesz na przykład zwrócić nil z funkcji stylu elementu, jeśli chcesz, aby podzbiór elementów pozostał niewidoczny.

Na przykład użyj GMSDatasetFeature.datasetAttributes, aby zwrócić wartość atrybutu zbioru danych dla elementu. Następnie możesz dostosować styl elementu na podstawie jego atrybutów.

W tym przykładzie określamy wartość atrybutu „highlightColor” każdego elementu zbioru 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 stylu z warstwy

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

Swift

layer.style = nil

Objective-C

layer.style = nil;

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