寻找地图上的城市的多边形或区域

问题描述 投票:0回答:1

我希望周围的城市或地区用户搜索在地图上画一个边界。我使用谷歌API地点找到Lattitude和位置的经度。但我也希望城市或区域的边界。所以,我可以得出周围区域的多边形来表现。

例如,如果用户搜索“美国纽约”,我想提请覆盖在地图上只覆盖纽约市。

有没有我可以在iOS中使用,以在地图上找到了整个区域的任何API?

ios swift mapkit google-places-api
1个回答
2
投票

谷歌并没有提供这样的API,但你可以在GeoJSON格式导出多边形坐标使用OpenStreetMap城市。

您可以转换成由几个图书馆像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()
© www.soinside.com 2019 - 2024. All rights reserved.