Thêm tập dữ liệu vào bản đồ

Trang này cho bạn biết cách thêm tập dữ liệu vào bản đồ và áp dụng kiểu.

Áp dụng kiểu cho một đối tượng tập dữ liệu.

Điều kiện tiên quyết

Trước khi tiếp tục, bạn cần có một mã bản đồ và kiểu bản đồ, cũng như một mã tập dữ liệu.

Liên kết mã tập dữ liệu với kiểu bản đồ

Để tạo kiểu cho các đối tượng của tập dữ liệu, bạn sẽ áp dụng một hàm tạo kiểu cho lớp đối tượng tập dữ liệu của bản đồ. Lớp đối tượng của tập dữ liệu được tạo khi bạn liên kết tập dữ liệu với kiểu bản đồ.

Hãy làm theo các bước sau để liên kết tập dữ liệu của bạn với kiểu bản đồ bạn đang sử dụng:

  1. Trong Google Cloud Console, hãy truy cập vào trang Tập dữ liệu.
  2. Nhấp vào tên của tập dữ liệu. Trang Thông tin chi tiết về tập dữ liệu sẽ xuất hiện.
  3. Nhấp vào thẻ Xem trước.
  4. Trong mục Kiểu bản đồ được liên kết, hãy nhấp vào THÊM KIỂU BẢN ĐỒ.
    Ảnh chụp màn hình nút THÊM KIỂU BẢN ĐỒ.
  5. Nhấp vào(các) hộp kiểm cho(các) Kiểu bản đồ cần liên kết và sau đó nhấp vào LƯU.

Áp dụng kiểu cho tập dữ liệu

Để tạo kiểu cho một đối tượng của lớp tập dữ liệu, hãy sử dụng thành phần đóng tạo kiểu chấp nhận một GMSDatasetFeature rồi trả về GMSFeatureStyle để xác định kiểu . Sau đó, đặt thuộc tính kiểu thành đóng định kiểu, trong đó chứa logic định kiểu.

Việc đóng kiểu là bắt buộc mang tính xác định và trả về tính nhất quán kết quả khi áp dụng. Nếu bất kỳ thông số kỹ thuật định kiểu nào của đối tượng nào đó đã thay đổi thì phải áp dụng lại kiểu.

Đặt bán kính nét vẽ, màu nền và bán kính điểm

Khi tạo kiểu cho một đối tượng trong hàm factory tạo kiểu, bạn có thể đặt:

  • Màu và độ mờ nét vẽ của đường viền do UIColor xác định . Giá trị mặc định là trong suốt (UIColor.clearColor).

  • Độ rộng nét chữ của đường viền tính bằng pixel trên màn hình. Giá trị mặc định là 2.

  • Màu tô và độ mờ do lớp UIColor xác định. Mặc định có giá trị trong suốt (UIColor.clearColor).

  • Bán kính điểm của một đối tượng điểm trong khoảng từ 0 đến 128 pixel.

Sử dụng quy tắc kiểu đơn giản

Cách đơn giản nhất để tạo kiểu cho các đối tượng là xác định các thuộc tính kiểu không đổi, như màu sắc, độ mờ và độ rộng đường. Áp dụng trực tiếp các lựa chọn kiểu tính năng cho một hoặc sử dụng lớp tính năng này cùng với kiểu tuỳ chỉnh.

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

Sử dụng quy tắc kiểu khai báo

Bạn có thể đặt quy tắc kiểu được khai báo dựa trên thuộc tính của đối tượng, rồi áp dụng chúng cho toàn bộ tập dữ liệu. Bạn có thể trả lại nil trong hàm kiểu tính năng, ví dụ: nếu bạn muốn giữ lại một số tính năng không hiển thị.

Ví dụ: sử dụng GMSDatasetFeature.datasetAttributes để trả về giá trị của thuộc tính tập dữ liệu cho một đối tượng. Sau đó, bạn có thể tuỳ chỉnh định kiểu của đối tượng dựa trên các thuộc tính của đối tượng đó.

Ví dụ này xác định giá trị của thuộc tính "highlightColor" của mỗi biến tính năng của tập dữ liệu để kiểm soát kiểu:

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

Xoá kiểu khỏi lớp

Để xoá kiểu khỏi một lớp, hãy đặt style thành null:

Swift

layer.style = nil

Objective-C

layer.style = nil;

Bạn cũng có thể trả về nil từ hàm kiểu tính năng, ví dụ: nếu bạn muốn một tập hợp con tính năng tiếp tục ẩn.