1 Star 0 Fork 23

水泽节/qgis_cpp_api_apps

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

QGis C++ API二次开发示例大全

名称 描述
ll_qgis_code_examples 包含大量示例代码:图层添加、地图符号化、MapCanvas使用、Gis算法调用等等
ll_qgis_realtime_uavs 模拟收到经纬度后实时显示在高德地图上,可设置图标等参数
ll_qgis_hello 最简单的qgis应用,调用QGis库,获取QGis的发行名称
更多应用陆续添加中......

项目特性

  • 基于QGis3.28 Qt5.15.3
  • 从实际项目中抽取的QGis二次开发使用场景
  • 教程中有QGis软件操作和二次开发代码对比
  • Apache 协议开源

项目文档

社群

公众号

输入图片说明

  • 请关注微信公众号获取最新消息推送

QQ群

输入图片说明

  • 加入qq群

知识星球

输入图片说明

  • 加入知识星球有偿咨询

源码说明

ll_qgis_code_examples

截图

  • 添加离线高德影像 输入图片说明
  • RubberBand画多边形 输入图片说明
  • 符号化-点-动画标记 输入图片说明
  • 符号化-面-2.5D 输入图片说明
  • 地图图表 输入图片说明
  • 数据处理-算法-裁剪-随机点生成-缓冲区 输入图片说明

演示QGis C++ API的使用,包括如下功能:

  • 加载各种格式数据
    • shapefile
    • gpx
    • gpkg
    • geojson
    • gml
    • kml
    • dxf
    • coverage目录
    • csv
    • spalialite数据库
    • memory,
    • wfs
    • raster栅格,
    • wms(在线高德,离线高德)
  • 地图符号化
    • 矢量点符号化
      • 单一符号(Single symbol)
        • 简单标记(Simple marker)
        • SVG标记(SVG marker)
        • 图片(Raster Image marker)
        • 动画标记(Animated marker)
        • 椭圆形标记(Ellipse marker)
        • 填充标记(Filled marker)
        • 字符标记(Font marker)
        • 几何生成器(Geometry generator)
        • 掩膜(Mask marker)
        • 矢量字段标记(Vector field marker)
      • 分类(Categorized)
      • 分级(Graduated)
      • 基于规则(Rule-based)
      • 点分布(Point displacement)
      • 点聚合(Point cluster)
      • 热力图(Heatmap)
    • 矢量线符号化
      • 简单线(Simple line)
      • 栅格线(Raster Line)
      • 箭头(Arrow)
      • 几何生成器(Geometry generator)
      • 短划线(Hashed Line)
      • 插值线(Interpolated Line)
      • 爆炸线(Lineburst)
      • 标记线(Marker line)
    • 矢量面符号化
      • 单一符号(Single symbol)
        • 仅渲染中心点(Centroid fill)
        • 几何生成器(Geometry generator)
        • 渐变填充(Gradient fill)
        • 使用线符号填充(Line pattern fill)
        • 使用点符号填充(Point pattern fill)
        • 随机标记填充(Random Marker Fill)
        • 栅格数据填充(Raster image fill)
        • SVG填充(SVG fill)
        • 形状炸裂填充(Shapeburst fill)
        • 简单填充(Simple fill)
        • 箭头渲染边界(Outline: Arrow)
        • 短划线渲染边界(Outline: Hashed Line)
        • 插值线渲染边界(Outline: Interpolated Line)
        • 爆炸线渲染边界(Outline: Lineburst)
        • 标记符号渲染边界(Outline: Marker line)
        • 栅格线渲染边界(Outline: Raster Line)
        • 简单线渲染边界(Outline: Simple line)
      • 反转面要素(Inverted polygons)
      • 2.5 D
    • 栅格数据符号化
      • Multiband color:多波段彩色
      • Paletted/Unique values:唯一值着色
      • Singleband gray:单波段灰度
      • Singleband pseudocolor:单波段伪彩色
      • Hillshade:山体阴影
      • Contours:轮廓
  • 地图标注,地图注释
  • 地图图表
    • 饼图(Pie Diagram)
    • 文本图(Text Diagram)
    • 直方图(Histogram)
    • 分段条形图(StackedBar Diagram)
  • 矢量数据操作:数据显示,数据选择,数据查询,空间索引,距离面积计算以及将图层写入文件
  • MapCanvas使用
    • 地图Canvas的使用:背景色,中心点,角度的修改
    • 地图工具(Map Pan,Map Zoom)的使用
    • RubberBand画线画多边形
    • VertexMarker的使用
    • 图层树的使用,在图层叶子节点右键菜单的实现
  • 内置算法的使用
    • 随机生成点
    • 按照参照面裁剪
    • Buffer缓冲区

ll_qgis_realtime_uavs

演示从无人机获取数据,在地图上显示实时轨迹

截图

输入图片说明

功能说明

  • 加载高德路网地图
  • 模拟接收设备经纬度
  • 创建memory图层
  • 显示设备实时位置
  • 显示设备实时轨迹
  • 设置设备符号,可设置简单点符号或者svg符号
  • 设置其他属性
  • 轨迹线颜色
  • 轨迹线宽度

ll_qgis_hello

截图

输入图片说明

功能说明

  • 简单的hello qgis应用
  • 获取qgis的发行名称并显示在界面上

参考资料

空文件

简介

QGis C++ API二次开发示例大全 展开 收起
README
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/alvinZhangHu/qgis_cpp_api_apps.git
git@gitee.com:alvinZhangHu/qgis_cpp_api_apps.git
alvinZhangHu
qgis_cpp_api_apps
qgis_cpp_api_apps
master

搜索帮助