- 打开QGIS软件,并在菜单栏中选择“矢量” -> “OpenStreetMap” -> “下载数据”。
- 在弹出的“OSM下载”窗口中,选择您想要下载的区域,并勾选“公园”选项。
- 点击“下载”按钮,等待数据下载完成。
- 下载完成后,您可以在QGIS的图层面板中看到下载的公园范围矢量数据。
请注意,这种方法只能获取到OSM中已经标记为“公园”的范围矢量数据。如果您需要更详细的公园数据,可能需要使用其他数据源或手动标注。
以下是使用Python编写的QGIS脚本,可以实现批量获取OSM中公园范围矢量数据:
# 导入QGIS核心库
from qgis.core import *
# 导入QGIS GUI库
from qgis.gui import *
# 导入处理算法库
from processing.core.Processing import Processing
# 导入OpenStreetMap下载算法
from processing.algs.qgis.OSM import OsmDownloader
# 初始化QGIS应用程序
app = QgsApplication([], True)
QgsApplication.setPrefixPath("/usr", True)
app.initQgis()
# 定义区域列表
areas = ["New York City, New York", "Los Angeles, California", "Chicago, Illinois"]
# 设置处理算法上下文
context = QgsProcessingContext()
context.setProject(QgsProject.instance())
# 启动处理算法
Processing.initialize()
for area in areas:
# 定义处理参数
params = {
"EXTENT": area,
"OVERPASS_API": "http://overpass-api.de/api/interpreter",
"OUTPUT_FILE": "/path/to/output/file.osm",
"OUTPUT_TYPES": "park"
}
# 运行OpenStreetMap下载算法
OsmDownloader().processAlgorithm(params, context)
需要将`areas`变量替换为您想要下载的区域列表,将`/path/to/output/file.osm`替换为您想要保存数据的路径。此脚本将会依次下载每个区域中标记为“公园”的范围矢量数据,并保存在指定路径下。
请注意,此脚本需要在QGIS中运行,并且需要安装OpenStreetMap插件。