На этой странице показано, как добавить набор данных на карту и применить к нему стили.

Предварительные требования
Прежде чем продолжить, вам потребуется идентификатор карты, стиль карты и идентификатор набора данных.
Свяжите идентификатор набора данных со стилем карты.
Для оформления объектов набора данных используется функция стиля, применяемая к слою объектов набора данных на карте. Слой объектов набора данных создается при связывании набора данных со стилем карты .
Выполните следующие шаги, чтобы связать ваш набор данных с используемым стилем карты:
- В консоли Google Cloud перейдите на страницу «Наборы данных» .
- Щелкните по названию набора данных. Откроется страница с подробными сведениями о наборе данных .
- Нажмите вкладку « Предварительный просмотр» .
- В разделе «Связанные стили карты» нажмите «ДОБАВИТЬ СТИЛЬ КАРТЫ» .

- Установите флажки напротив стилей карты, которые необходимо связать, а затем нажмите СОХРАНИТЬ .
Примените стили к набору данных.
Для оформления объекта слоя набора данных используйте замыкание стиля, которое принимает объект GMSDatasetFeature и возвращает объект GMSFeatureStyle , чтобы определить атрибуты стиля. Затем установите свойство стиля на замыкание стиля, содержащее логику оформления.
Требуется, чтобы механизм замыкания стилей был детерминированным и возвращал согласованные результаты при применении. Если изменяются какие-либо параметры стилей для какой-либо функции, стиль необходимо применить заново.
Задайте обводку, заливку и радиус закругления кончика.
При стилизации элемента в функции фабрики стилей можно задать следующие параметры:
Цвет обводки и прозрачность границы определяются классом
UIColor. Значение по умолчанию — прозрачный (UIColor.clearColor).Толщина обводки границы в пикселях экрана. Значение по умолчанию — 2.
Цвет заливки и прозрачность определяются классом
UIColor. Значение по умолчанию — прозрачный (UIColor.clearColor).Радиус точки, определяемый параметром "точка", составляет от 0 до 128 пикселей.
Используйте простые правила стиля.
Простейший способ оформления объектов — определение постоянных атрибутов стиля, таких как цвет, прозрачность и толщина линии. Применяйте параметры стиля объектов непосредственно к слою объектов набора данных или используйте их в сочетании с пользовательским стилем.
Быстрый
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; };
Используйте правила декларативного стиля.
Вы можете декларативно задавать правила стиля на основе атрибута объекта и применять их ко всему набору данных. Например, вы можете вернуть nil из функции стиля объекта, если хотите, чтобы подмножество объектов оставалось невидимым.
Например, используйте метод GMSDatasetFeature.datasetAttributes , чтобы получить значение атрибута набора данных для объекта. Затем вы можете настроить стиль объекта в зависимости от его атрибутов.
В этом примере определяется значение атрибута "highlightColor" для каждого элемента набора данных с целью управления стилем:
Быстрый
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. ... };
Удалить стиль из слоя
Чтобы удалить стиль из слоя, установите для style null :
Быстрый
layer.style = nil
Objective-C
layer.style = nil;
Вы также можете вернуть nil из функции стилизации объектов, например, если хотите, чтобы подмножество объектов оставалось невидимым.