1.3.2 QGIS主要功能
作为一个完整的地理信息系统桌面软件,QGIS的主要功能包括数据浏览、地图制图、数据管理与编辑、空间数据处理与空间分析、地图服务等功能框架。
1. 数据浏览功能
QGIS创立的初衷就是提供一个简单的地理空间数据浏览工具,因此数据浏览功能是QGIS的核心功能。QGIS既可以利用内嵌GDAL/ORG和GRASS支持常见的数据格式,也可以读取PostGIS、SpatiaLite、MS SQL Spatial、Oracle Spatial等存储于数据库中的地理空间数据。另外,QGIS还可以访问符合WMS、WMTS、WCS、WFS等OGC标准的互联网空间数据服务。某些数据虽然无法被原生QGIS软件读取,但它们可以通过插件扩展的方式被读取。因此,相对于ArcGIS、GRASS GIS等桌面软件,QGIS的数据支持能力非常强。
2. 地图制图功能
QGIS具有非常强大的地图表达和渲染能力,甚至可以进行简单的3D渲染。在OpenGIS中,QGIS包含完整的符号化、地图标注、输出与打印功能。特别是,QGIS具有实时渲染和优秀的抗锯齿能力。在一定程度上,QGIS的制图能力远超绝大多数的GIS软件,在某些方面甚至超越了ArcGIS软件。
3. 数据管理与编辑功能
受益于QGIS的数据支持能力,QGIS可以管理不同数据源的地理空间数据。这些不同数据源的数据在QGIS中具有相同的数据接口,不同数据类型的空间数据可以轻而易举地进行格式转换。我们可以通过QGIS完整的矢量编辑功能对这些数据进行增、删、改、查等操作及基本矢量叠加运算。
4. 空间数据处理与空间分析功能
空间分析实际上属于空间数据处理的一部分。QGIS的空间数据处理与空间分析功能较弱,但是QGIS整合了GDAL/OGR、GEOS、GRASS GIS、SAGA GIS等GIS工具。因此,QGIS的优势在于可以对来源不同的空间数据处理工具进行整合,利用QGIS中的Processing Modeler、PyQGIS和C++ API构建自动化的数据处理工具,以解决复杂的地理与空间问题。
5. 地图服务功能
QGIS可以作为WMS、WMTS客户端,QGIS Server可以作为轻量级WMS、WCS、WFS服务器。如果QGIS Server不能满足需求,则可以通过MapServer构建复杂的GIS服务器。
上述功能为QGIS具备的主要功能。实际上,QGIS还可以通过功能扩展的方式提供更高级、更复杂的功能。开发者可以根据需求的复杂度,通过表1-4介绍的几种方式进行功能扩展。
表1-4 QGIS功能扩展的主要方式
如果需求复杂,则需要更高的可扩展性的功能扩展方式,也就需要更高的扩展复杂度。模型构建和插件扩展的方式是最方便的功能扩展方式,但是无法脱离QGIS的主窗口执行扩展功能。采用PyQGIS开发、C++ API开发或重编译开发的方式进行功能扩展的潜力是很大的,可以脱离QGIS的主窗口构建独立的GUI,更适合专业用户,但是其复杂度和成本也是最大的。QGIS的扩展方式详见“第11章 扩展QGIS”。
【小提示】目前,QGIS的中文学习资料较少,学习QGIS仍然需要依靠一些成熟的英文资料。QGIS的体系庞大,我们要全面掌握QGIS的各项功能是一件很困难的事情,因此常常需要从互联网上查询QGIS的相关资料。
• 官方用户手册:http://docs.qgis.org/3.10/en/docs/user_manual。
• 官方PyQGIS手册:http://qgis.org/pyqgis/3.10/。
• 官方推荐英文QGIS书籍:https://www.qgis.org/en/site/forusers/books/index.html。
• 官方学习资料:http://docs.qgis.org/latest/en/docs/training_manual/index.html。
• 得克萨斯A&M大学QGIS学习资料:http://mltconsecol.github.io/QGIS-Tutorial/。