QGIS
文章平均质量分 50
GISerQ.
还未到终点,你我皆黑马。
展开
-
QGIS制图:矢量数据制图流程及导出
打开QGIS后,把需要的数据加载进来,这里以河南的数据为例。加载数据可以使用直接拖动的方式,也可以选择菜单栏的“图层”—》“添加图层”—》“添加矢量图层”添加数据,或者使用快捷键。”这里选择name名字,可以根据需要自行更改,再点击按钮“分类”,即可看见将各个行政区按名字进行分类。...原创 2022-07-25 15:17:23 · 9472 阅读 · 1 评论 -
QGIS加载在线地图:高德、天地图等
QGIS能够加载WMS、WMTS、WFS,以及XYZ形式的瓦片等在线地图服务,通常可以作为空间数据的底图一起可视化出来,例如高德地图、天地图、OSM(openstreetmap)等在线地图服务。其中,链接中的{s}可能需要手动补一下;部分链接可能由于网络原因加载的很慢或加不出来。推荐一个XYZ格式在线地图的网站,集合了一些底图的xyz链接。...原创 2022-07-24 10:19:50 · 19422 阅读 · 6 评论 -
VS2019+QGIS3.20二次开发:加载在线地图
.在使用C++基于QGIS二次开发时想要加载一下在线地图,就有了下面的内容。目前只试了wms格式的地图,下面为实现函数,直接调用就可以。//OSM在线地图-投影坐标系 addOpenSourceRasterLayer("type=xyz&url=http://c.tile.openstreetmap.org/{z}/{x}/{y}.png", "OSM", "wms"); //加载在线地图 void MyQGIS::addOpenSourceRasterLayer(con原创 2021-11-21 16:25:34 · 2279 阅读 · 16 评论 -
QGIS3.20+VS2019二次开发:根据经纬度坐标绘制在画布绘制点,并赋予点不同样式
QGIS3.20+VS2019二次开发:根据经纬度坐标绘制在画布绘制点,并赋予点不同样式点样式可在QGIS源码下面的“images”文件夹下面找到,通常使用svg格式。具体实现代码如下:void DBCGL::drawPoints() { QgsVectorLayer* pointLayer = new QgsVectorLayer("Point?crs=epsg:4326&", "MyPoint", "memory"); // 实例化矢量图层,作为点图层原创 2021-11-14 10:44:17 · 2381 阅读 · 0 评论 -
QGIS3.20+VS2019二次开发:为图层添加注记或标签
QGIS3.20+VS2019二次开发:为图层添加注记或标签使用C++对QGIS二次开发时,想要像在ArcGIS里面一样为图层添加标注,可以使用以下代码实现,在此记录一下。实现过程比较交单,主要是对图层的一个操作,在代码中有详细注释,可参考://设置图层显示标签 void DBCGL::LayerLableSet(QgsVectorLayer * layer) { layer = (QgsVectorLayer*)this->activeLayer();原创 2021-11-14 10:29:02 · 2746 阅读 · 0 评论 -
QGIS 3.20 +VS2019二次开发中标签样式设置时在画布中中文显示为乱码
问题描述:使用QGIS 3.20 +VS2019进行二次开发时,标签样式设置时在画布中中文显示为乱码解决方法:这是由于qgis读取时默认读取的是utf-8格式,而.shp文件默认是GBK或者GB2312格式的,需要在QGIS中打开*.shp文件,选择“源”,将其格式改为utf-8后导出,再次用QGIS读取显示标签时则可以正常显示中文。...原创 2021-11-14 10:24:08 · 576 阅读 · 0 评论 -
QGIS3.20.0+QT 5.15.2+VS2019二次开发(2)图层管理器右键和可移动部件
文章目录前言一、上节内容二、相关代码1.MyQGIS01.h2.MyQGIS01.cpp3.MyQGIS01LayerTreeViewMenuProvider.h4.MyQGIS01LayerTreeViewMenuProvider.cpp5.mian.cpp总结前言上节介绍了基于QGIS添加矢量和栅格数据以及移除数据的功能,这节介绍添加右键管理图层相关实现功能。提示:以下是本篇文章正文内容.一、上节内容上节内容可参考:添加菜单栏功能二、相关代码1.MyQGIS01.h代码如下(示例)原创 2021-11-13 22:13:54 · 1255 阅读 · 2 评论 -
QGIS3.20+VS2019+QT5.15.2二次开发环境搭建及添加矢量栅格数据(1)
文章目录前言一、槽函数二、项目代码1.创建项目2. MyQGIS01.h3.MyQGIS01.cpp3. main.cpp前言最近在用到QGIS的二次开发,在此记录一下开发过程中遇到的问题和解决犯法,仅做一下记录,方便后面使用。本节主要记录关于添加菜单栏、矢量和栅格数据,以及移除这些数据功能的实现。QGIS+vs2019的环境配置可参考上一篇博文:QGIS的环境配置一、槽函数槽函数是用于点击组件会触发的结果,是connect函数的一部分。比如我们创建了Open这个打开文件的行为,那么就需要和它关原创 2021-11-08 22:13:39 · 906 阅读 · 1 评论 -
QGIS3+vs2019二次开发渲染矢量图层
我使用的环境为vs2019+QGIS3.16QGIS改变点或者线要素的样式时,主要用到了QgsMarkerSymbol和QgsLineSymbol两个子类,具体代码如下,用法也比较简单:svg图片一般在QGIS源码中的image路径下:具体代码,根据自己的实际情况稍作修改即可:点图层的渲染:#include <qgsmarkersymbol.h>#include <qgssinglesymbolrenderer.h>#include <qgsmarkersymb原创 2021-09-26 22:19:37 · 1340 阅读 · 0 评论 -
QGis编译出现的问题及解决方法
我是使用VS2019+QT2.15.2+QGIS 3.16.0编译运行的,其中出现了较多的问题,在此记录一下,避免其他人入坑。1.random_shuffle()一直显示未找到标识符解决方法:这是由于C++ 17中,该标识符已经被移除,可将环境改为C++ 17以下。2.QGIS通过CMAKE编译后用VS2019生成没问题,一旦运行就会出现下面的问题。Error loading QGISOops, looks like an error loading Qgis, Details Could not原创 2021-09-04 17:49:28 · 3027 阅读 · 5 评论 -
VS2019+QT5.15.2+QGIS二次开发环境搭建
VS2019+QT5.15.2+QGIS二次开发环境搭建1.开发环境VS2019+QT5.15.2+QGIS注意,QT 平台的版本与qgis下载的版本有关,以前采用OSGeo4w64来下载qgis时会区分32和64位,但现在官网已经不再区分。如果下载qgis-ltr(官网的长期支持版,qgis 2.18),那么建议qt采用5.0以下的版本;如果下载qgis 是3.0版本以上,个人建议qt版本,下载高于qt5.9.2;另外如果是使用VS2013,那么不能编译qgis3.0版本以上的,c++11个部原创 2021-08-28 11:09:59 · 4850 阅读 · 19 评论