Agrega un conjunto de datos a un mapa

Selecciona la plataforma: Android iOS JavaScript

En esta página, se muestra cómo agregar un conjunto de datos a un mapa y aplicar diseños.

Aplica diseño a un componente de un conjunto de datos.

Requisitos previos

Antes de continuar, debes tener un ID de mapa, un diseño de mapa y un ID de conjunto de datos.

Asocia un ID de conjunto de datos a un diseño de mapa

Para aplicar diseño a los componentes de un conjunto de datos, debes aplicar una función de diseño a la capa de componentes del conjunto de datos de un mapa. La capa de componentes del conjunto de datos se crea cuando asocias un conjunto de datos con un diseño de mapa.

Para asociar tu conjunto de datos al diseño de mapa que utilizas, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Conjuntos de datos.
  2. Haz clic en el nombre del conjunto de datos. Se abrirá la página Detalles del conjunto de datos.
  3. Haz clic en la pestaña Vista previa.
  4. En la sección Diseños de mapa asociados, haz clic en AGREGAR DISEÑO DE MAPA.
    Captura de pantalla del botón AGREGAR DISEÑO DE MAPA.
  5. Haz clic en las casillas de verificación correspondientes a los diseños de mapa que deseas asociar y, luego, en GUARDAR.

Aplica diseños al conjunto de datos

Para aplicar diseño a un componente de la capa del conjunto de datos, usa un cierre de diseño que acepte un GMSDatasetFeature y devuelva un GMSFeatureStyle para definir los atributos de diseño. Luego, establece la propiedad de diseño en un cierre de diseño, que contiene la lógica de diseño.

El cierre de diseño debe ser determinista y mostrar resultados coherentes cuando se aplica. Si se cambia alguna especificación de diseño de cualquier componente, se debe volver a aplicar el diseño.

Establece el trazo, el relleno y el radio del punto

Cuando aplicas diseño a un componente en la función de fábrica de diseño, puedes establecer lo siguiente:

  • Color y opacidad del trazo del borde, según lo define la clase UIColor. El valor predeterminado es transparente (UIColor.clearColor).

  • Ancho del trazo del borde en píxeles de pantalla. El valor predeterminado es 2.

  • Color y opacidad del relleno, como lo define la clase UIColor. El valor predeterminado es transparente (UIColor.clearColor).

  • Radio del punto de un componente de punto entre 0 y 128 píxeles.

Utiliza reglas de diseño simples

La manera más simple de aplicar diseño a un componente es definir atributos de diseño constantes, como el color, la opacidad y el ancho de línea. Aplica opciones de diseño de componentes directamente a una capa de componentes del conjunto de datos, o utilízalas en conjunto con diseños personalizados.

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

Utiliza reglas de diseño declarativas

Puedes establecer reglas de diseño de forma declarativa en función de un atributo de la función y aplicarlas a todo el conjunto de datos. Puedes mostrar nil desde la función de diseño de componentes, por ejemplo, si deseas que un subconjunto de componentes permanezca invisible.

Por ejemplo, usa GMSDatasetFeature.datasetAttributes para mostrar el valor de un atributo de conjunto de datos para un componente. Luego, puedes personalizar el diseño de la función según sus atributos.

En este ejemplo, se determina el valor del atributo "highlightColor" de cada componente de un conjunto de datos para controlar el diseño:

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

Cómo quitar el diseño aplicado a una capa

Para quitar el diseño aplicado a una capa, establece style en null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

También puedes mostrar nil desde tu función de diseño de componentes, por ejemplo, si quieres que un subconjunto de componentes permanezca invisible.