文章目录
搭建开发环境
1 目标
搭建QGIS的开发环境。
2 步骤
2.1 安装Visual Studio 2022
2.2 安装OSGeo4W
链接: OSGeo4W
由于服务器在国外导致安装过慢,建议添加国内源http://gwmodel.whu.edu.cn/mirrors/osgeo4w。
2.3 使用OSGeo4W安装qgis、qgis-dev、qt5-dev
- 输入qgis,安装如图所示的2项
- 输入qt,安装如图所示的1项
2.4 使用vs创建一个c++空项目
2.4.1 添加头文件
- C:\OSGeo4W\apps\qgis-dev\include
- C:\OSGeo4W\apps\Qt5\include
- C:\OSGeo4W\apps\Qt5\include\QtCore
- C:\OSGeo4W\apps\Qt5\include\QtWidgets
- C:\OSGeo4W\apps\Qt5\include\QtGui
- C:\OSGeo4W\apps\Qt5\include\QtXml
2.4.2 添加库目录
- C:\OSGeo4W\apps\Qt5\lib
- C:\OSGeo4W\apps\qgis-dev\lib
2.4.3 添加链接库
- qgis_core.lib
- qgis_app.lib
- qgis_gui.lib
- Qt5Core.lib
- Qt5Gui.lib
- Qt5Widgets.lib
2.4.4 配置调试环境
PATH=C:\OSGeo4W\bin;C:\OSGeo4W\apps\qgis\bin;C:\OSGeo4W\apps\Qt5\bin
2.4.5 设置预处理
_USE_MATH_DEFINES
2.4.6 新建main.cpp文件
#include <QApplication>
#include <QMainWindow>
#include <qgsmapcanvas.h>
#include <qgsrasterlayer.h>
#include <qgsmaptoolpan.h>
int main(int argc, char** argv)
{
// 创建QGIS应用程序对象
QApplication qgisApp(argc, argv);
// 创建主窗口
QMainWindow mainWindow;
// 创建地图画布对象
QgsMapCanvas mapCanvas;
// 创建并加载栅格图层(tif格式文件)
QgsRasterLayer rasterLayer(R"(D:\work\LH\15\bj\bj.tif)");
// 将图层添加到地图画布中
mapCanvas.setLayers({ &rasterLayer });
// 设置地图画布的显示范围为图层的范围
mapCanvas.setExtent(rasterLayer.extent());
// 刷新地图画布以应用更改
mapCanvas.refresh();
// 创建并设置平移工具,允许在地图上平移
QgsMapToolPan panTool(&mapCanvas);
mapCanvas.setMapTool(&panTool);
// 将地图画布设置为主窗口的中央部件
mainWindow.setCentralWidget(&mapCanvas);
// 显示主窗口
mainWindow.show();
// 运行QGIS应用程序的事件循环
return qgisApp.exec();
}