zoukankan      html  css  js  c++  java
  • Qgis 基于Qt环境下的开发:第一节《加载矢量图层》

    Qgis ,gis,ArcGis 的用法大致相同,今天针对Qgis(地理信息系统)做一个简单的开发。

    搭建环境就不用讲了,博客园 ,CSDN等有很多介绍的方法。

    第一步配置文件

    第二步要在main.cpp添加路径格式,添加Qgis单例

    接下来就是我们的代码实现了:

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    
    #include <qgsmapcanvas.h>
    #include <qgsvectorlayer.h>
    #include <QList>
    #include <QHBoxLayout>
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
        , ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    
    
        //创建一个画布
        QgsMapCanvas *canvas= new QgsMapCanvas(this);
        //设置画布大小为当前窗口大小
        canvas->resize(this->size());
        //添加矢量图层路径
        QString path = "D:/JIETU/bbb.shp";
        //创建一个矢量图层
        QgsVectorLayer *layer1 = new QgsVectorLayer(path,"","ogr");
        //创建一个链表来存放图层
        QList<QgsMapLayer *> layers;
        //将图层追加到链表中
        layers.append(layer1);
    
        //将图层画到画布上
        canvas->setLayers(layers);
        //设置画布缩放
        canvas->zoomToFullExtent();
        //添加布局
        QHBoxLayout *layout = new QHBoxLayout(this);
        layout->addWidget(canvas);
    
    }
    

    实现效果如下图:

  • 相关阅读:
    Python: 通过 pip 安装第三方包后依然不能 import
    jar命令
    vim中删除^M
    Linux 非互联网环境安装依赖包
    安装rpm包时提示错误:依赖检测失败的解决方法
    python3.5安装
    yum配置安装 及报错
    统计数组元素出现的次数
    插入法排序
    选择法排序
  • 原文地址:https://www.cnblogs.com/Qt895996365/p/13516902.html
Copyright © 2011-2022 走看看