Trang này trình bày cách kết xuất dữ liệu địa lý trong KML
sử dụng GMUKMLParser
trong
kết hợp với GMUGeometryRenderer
. KML là một định dạng tệp phổ biến
để kết xuất dữ liệu địa lý như điểm, đường và đa giác.
Ảnh chụp màn hình sau đây minh hoạ một số dữ liệu KML mẫu được kết xuất trên bản đồ:
![Bản đồ có dữ liệu KML](https://developers.google.cn/static/maps/documentation/ios-sdk/images/kml-render-example.png?authuser=0000&hl=vi)
Điều kiện tiên quyết và lưu ý
GMUKMLParser
là một phần của
SDK Bản đồ dành cho Thư viện tiện ích iOS. Nếu bạn chưa thiết lập
thư viện, hãy làm theo hướng dẫn thiết lập trước khi đọc phần còn lại của trang này.
Để xem mã mẫu đầy đủ, hãy xem các ứng dụng mẫu bật GitHub.
Hiển thị dữ liệu KML
Để kết xuất dữ liệu KML trên bản đồ, hãy tạo GMUKMLParser
với phần tử
đường dẫn đến một tài nguyên KML (trong ví dụ này là KML_Sample.kml
). Sau đó:
tạo một GMUGeometryRenderer
truyền GMUKMLParser
thực thể. Cuối cùng, hãy gọi GMUGeometryRenderer.render()
. Chiến lược phát hành đĩa đơn
mã ví dụ sau đây minh hoạ việc kết xuất dữ liệu KML trên bản đồ:
Swift
import GoogleMapsUtils class KML: NSObject { private var mapView: GMSMapView! func renderKml() { guard let path = Bundle.main.path(forResource: "KML_Sample", ofType: "kml") else { print("Invalid path") return } let url = URL(fileURLWithPath: path) let kmlParser = GMUKMLParser(url: url) kmlParser.parse() let renderer = GMUGeometryRenderer( map: mapView, geometries: kmlParser.placemarks, styles: kmlParser.styles ) renderer.render() } }
Objective-C
@import GoogleMapsUtils; @implementation KML { GMSMapView *_mapView; } - (void)renderKml { NSString *path = [[NSBundle mainBundle] pathForResource:@"KML_Sample" ofType:@"kml"]; NSURL *url = [NSURL fileURLWithPath:path]; GMUKMLParser *parser = [[GMUKMLParser alloc] initWithURL:url]; [parser parse]; GMUGeometryRenderer *renderer = [[GMUGeometryRenderer alloc] initWithMap:_mapView geometries:parser.placemarks styles:parser.styles]; [renderer render]; } @end