Dar*_*ana 3 mapkit ios google-places-api swift
我想在城市或用户在地图上搜索的区域周围绘制边界。我正在使用 Google Place API 查找位置的纬度和经度。但我也想要城市或地区的边界。所以我可以在该区域周围绘制一个多边形来显示。
例如,如果用户搜索“美国纽约”,我想在地图上绘制仅覆盖纽约市的叠加层。
我可以在 ios 中使用任何 API 来查找地图上的整个区域吗?
Google 不提供此类 API,但您可以使用OpenStreetMap获取城市的 geojson 格式的多边形坐标。
您可以通过多个库(例如GEOSwift )将响应转换为在地图上使用。
例子:
https://nominatim.openstreetmap.org/search.php?q=New+York&polygon_geojson=1&format=json
let url = URL(string: "https://nominatim.openstreetmap.org/search.php?q=New+York&polygon_geojson=1&format=json")!
let task = URLSession.shared.dataTask(with: url) {(data, response, error) in
guard let data = data else { return }
print(String(data: data, encoding: .utf8)!) // Here convert the data to show on map
}
task.resume()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3873 次 |
| 最近记录: |